Excel VBA:用相邻的单元格值填充空单元格

Posted

技术标签:

【中文标题】Excel VBA:用相邻的单元格值填充空单元格【英文标题】:Excel VBA: Fill in empty cells with adjacent cell values 【发布时间】:2017-05-31 15:09:55 【问题描述】:

我想知道是否有人可以提供帮助 -

我有一列“I”包含不同值的单元格;其中一些单元格是空白的。我还有一个相邻的完整列“G” - 没有空白单元格。

我基本上想要做的是使用 VBA 将“I”列中的空单元格填充为“G”列中相邻单元格的值。

我在命令按钮中编写了以下代码:

Sub CommandButton2_Click()

   Lastrow = Cells(Rows.Count, "G").End(xlUp).Row

   Range("I2:I" & Lastrow).SpecialCells(xlCellTypeBlanks).Value = Range("G2:G" & Lastrow).Value

End Sub

上面的代码填充了空白的“I”单​​元格,但在填充时似乎总是从第二个“G”单元格开始。我希望它用相邻的“G”单元格填充空白的“I”单​​元格,而不是在找到空白单元格时从头开始计数。

希望有人可以提供帮助。让我知道是否需要进一步澄清。

问候,

阿德里安

【问题讨论】:

【参考方案1】:
Dim blanks As Excel.Range

Set blanks = Range("I2:I" & Cells(Rows.Count, 7).End(xlUp).Row).SpecialCells(xlCellTypeBlanks)

blanks.Value = blanks.Offset(0, -2).Value

【讨论】:

我喜欢这种“无循环”的方法! “循环还是不循环,这是个问题......” - 不,只是不要。 :) 谢谢,伙计!不是所有的英雄穿着斗篷。 :D 哦 ffs,哪一个没穿斗篷?我以为我们很久以前就同意了着装要求*smh*

以上是关于Excel VBA:用相邻的单元格值填充空单元格的主要内容,如果未能解决你的问题,请参考以下文章

使用 VBA 进行颜色填充,以单元格值为条件

使用VBA进行颜色填充,有条件地使用单元格值

Excel VBA如何填充不同工作表中的值

(Excel) 基于相邻单元格值的条件格式

Excel vba 仅自动填充空单元格

Excel VBA 单元格值显示为整数