在一列中自动填充 VBA 中不同长度的多个部分

Posted

技术标签:

【中文标题】在一列中自动填充 VBA 中不同长度的多个部分【英文标题】:Auto fill multiple sections of varying length in VBA in one Column 【发布时间】:2015-04-28 17:59:35 【问题描述】:

在开发宏以自动填充 A 列中不同长度部分的文本时,我需要一些帮助。我是 VBA 新手,我尝试过记录宏,但它将部分定义为特定范围,每次我都会改变运行宏。自动填充的第一个单元格始终从单元格 A3 开始。 B 列中有相关值(它们是日期)。

我在网络上找不到类似这样的场景。

【问题讨论】:

什么定义了要填充的区域的大小? A 列中具有值的下一个单元格。我发现此代码仅适用于第一部分。可以修改它以重复不同的部分吗?Range("A3").Select Selection.End(xlDown).Select ActiveCell.Offset(-1, 0).Select Range(Selection, Selection.End(xlUp)).Select Selection .FillDown 不,不确定在代码中的样子。你知道让前面评论中的代码重复的方法吗? ***.com/questions/29883803/… 【参考方案1】:

请尝试:

Sub FillDown()
Range("B3", Range("B3").End(xlDown)).Offset(, -1).SpecialCells(xlCellTypeBlanks).Select
    Selection.FormulaR1C1 = "=R[-1]C"
End Sub  

或者在一行中:

Range("B3", Range("B3").End(xlDown)).Offset(, -1).SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"

【讨论】:

以上是关于在一列中自动填充 VBA 中不同长度的多个部分的主要内容,如果未能解决你的问题,请参考以下文章

应用公式,然后自动填充数据,直到列中的最后一个可见单元格:VBA

excel 中如何向一列中自动添加序号啊

Excel vba 仅自动填充空单元格

Excel VBA自动填充只返回公式

Excel VBA自动填充未填充第一行和第一列

如何使用VBA代码从ms-project的另一列中的文本中自动添加文本