2017-03-16 60 views
1

我試圖用數字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 

回答

2

使用

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 
+0

這工作完全非常感謝你的幫助! – Cocoberry2526

2

可以使用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 
+0

@ Cocoberry2526,你試試我的任何代碼? – user3598756

2

您的問題是,你需要的所有單元格爲空的條件是真實的。相反,您可以定義一個範圍並遍歷該範圍的所有元素。

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 
+0

該解決方案也與上面的解決方案一樣,都非常有幫助。謝謝!! – Cocoberry2526

相關問題