基于单元格值的自动填充线

Posted

技术标签:

【中文标题】基于单元格值的自动填充线【英文标题】:Autofill lines based off cell value 【发布时间】:2015-08-25 01:54:24 【问题描述】:

第一次在这里发布海报。我一直在寻找我的问题的答案,但是我无法找到适合我的答案的类似情况。我正在使用 Excel VBA 来尝试解决工作问题。我对 VBA 环境还很陌生,所以我不确定如何继续。任何帮助或建议将不胜感激!

问题:

我在 Tab1 的单元格 B14 中有一个值。这个单元格有一个COUNT 公式,它计算 Tab1 上的值的数量。有了这个数字(例如 14),我希望它转到 Tab2 并将单元格 A2:H2 中的公式复制到单元格中显示的数字下方,即 14 行。

如果 B14 显示 27,我希望宏自动填充 A2:H2 27 行,依此类推。我已经尝试了一些类似问题的示例,但无法使其正常工作。

有什么建议吗?

【问题讨论】:

【参考方案1】:

由于B14 中的值是通过公式确定的,因此您需要监视Worksheet_Calculate 事件以确定其值何时发生变化。 Static 变量可以解决问题。将以下事件处理程序添加到Sheet1

Private Sub Worksheet_Calculate()

    Static B14_Value As Long

    If Range("B14") <> B14_Value Then

        ' Save the new B14 value...
        B14_Value = Range("B14")

        ' Fill the formula down on Sheet2. Add one to account for offset.
        Sheet2.Range("A2:H" & B14_Value + 1).FillDown

    End If

End Sub

由于您从第 2 行开始,我们需要将 B14 的值加 1 以说明偏移量。

【讨论】:

感谢您的建议,我回家后试试看!

以上是关于基于单元格值的自动填充线的主要内容,如果未能解决你的问题,请参考以下文章

如何根据excel中的另一个单元格值自动填充两个不同列中的数据

如何根据单元格值自动填充excel用户表单中的选项按钮?

在 Excel 中每隔一个单元格自动填充

尝试使用 VB 自动填充大于 300,000 行的非常大的电子表格

VBA - 如何自动填充到底部,直到最后一个 B 单元格包含数据

自动填充在 Excel 中未按预期工作