遍历范围并find空单元格

我有以下代码的问题。 我希望它遍历一个范围(AK2直到数据结束),然后任何时候它find一个空单元格,它将其值更改为应收账款。 它不这样做,我也没有得到任何错误通知。 我的猜测是,我正在做一些错误的设置variables:

Option Explicit Private Sub Leere() Dim rng As range Dim rcell As range Dim WS As Worksheet Set WS = Worksheets("Sheet2") Set rng = WS.range("AK2", range("AK2").End(xlDown)) For Each rcell In rng If rcell.Value = " " Then rcell.Value = "Accounts Receivable" End If Next End Sub 

有任何想法吗?

使用SpecialCells()

 With ws .Range("AK2", .Cells(.Rows.Count, "AK").End(xlUp)).SpecialCells(XlCellType.xlCellTypeBlanks).Value = "Accounts Receivable" End With 

你应该能够用这样的东西replace空的(没有公式)单元格:

 Set ws = ThisWorkbook.Worksheets("Sheet2") Set rng = ws.Range("AK2", ws.Cells(ws.Rows.Count, "AK").End(xlUp)) rng.Replace "", "Accounts Receivable", xlWhole 

另一个非VBA选项可以是空白单元格的条件格式。 单元格值将仍然为空,但显示的文本更改将是dynamic的。