空のセルをすべて0に置き換えようとしています。これまでのところ私のコードは間違っていました。0の範囲の空白のセルを置換する
range("A1:O1").Select
range(Selection, Selection.End(xlDown)).Select
If range("A1:O1").Value = "" Then
range("A1:O1").Value = 0
End If
空のセルをすべて0に置き換えようとしています。これまでのところ私のコードは間違っていました。0の範囲の空白のセルを置換する
range("A1:O1").Select
range(Selection, Selection.End(xlDown)).Select
If range("A1:O1").Value = "" Then
range("A1:O1").Value = 0
End If
ループ使用します。Cocoberry2526 @
Sub marine()
Dim r As Range, rr As Range
Set r = Range("A1:O1")
Set r = Range(r, r.End(xlDown))
For Each rr In r
If rr.Value = "" Then rr.Value = 0
Next rr
End Sub
あなたはRange
オブジェクトのSpecialCells()
メソッドを使用することができます。
if worksheetfunction.CountBlank(range("A1:O1"))>0 then range("A1:O1").specialcells(xlCellTypeBlanks).Value=0
または
With Range("A1:O1")
if worksheetfunction.CountBlank(.Cells) >0 Then .SpecialCells(xlCellTypeBlanks).Value=0
End With
を、あなたは私のコードのいずれかを試してみたのですか? – user3598756
あなたの問題は、条件が真であるために、すべてのセルを空白にする必要があるということです。代わりに、範囲を定義してその範囲のすべての要素にループすることができます。
Sub tmp()
Dim r As Range, cell As Range
Set r = Range(Range("A1:O1"), Range("A1").End(xlDown))
For Each cell In r
If cell.Value = "" Then cell.Value = 0
Next cell
End Sub
このソリューションも上記と同じように機能し、どちらも非常に役に立ちました。ありがとうございました!! – Cocoberry2526
これは完璧にあなたの助けに感謝しました! – Cocoberry2526