用字符串内容替换空白单元格

时间:2016-03-01 16:30:55

标签: excel vba excel-vba

我需要用字符串填充特定范围内的一些空白单元格,即" Green"遗憾的是,我不知道最后一行的编号,因为这可能无法填充,每次运行脚本时都可能会更改,因为我将数据从一个工作表拉到另一个工作表中。

我正在搜索列中的最后一行编号,我知道该列中总是有数据,这是我正在运行的脚本的一部分我正在问的问题,我正在搜索一个空单元格用绿色'替换它。我没有得到任何错误它只是没有工作所以不确定我的逻辑出错了。

LastRow = Cells(Rows.Count, 2).End(xlUp).Row


With Range("AS22:AU" & LastRow)

         .Replace what:=" ", Replacement:="Greens"

End With

3 个答案:

答案 0 :(得分:1)

而不是这个;

.Replace what:=" ", Replacement:="Greens"

使用此;

.Replace what:="", Replacement:="Greens"

如果你的细胞包含假空白,那么在此之前使用它;

Columns("AS:AU").TextToColumns Destination:=Range("AS1"), DataType:=xlFixedWidth, FieldInfo:=Array(1, 1)

答案 1 :(得分:0)

您的代码正在查找具有单个空格而非完全为空的单元格。尝试:

Dim r as range
LastRow = Cells(Rows.Count, 2).End(xlUp).Row

For each r in Range("AS22:AU" & LastRow)
     if r.value2 = vbnullstring then r.value2 = "Greens"
Next r

答案 2 :(得分:0)

得到空白单元格:

LastRow = Cells(Rows.Count, 2).End(xlUp).Row 
Range("AS22:AU" & LastRow).SpecialCells(xlCellTypeBlanks).Value = "Green"