VBA - 如何自动填充到底部,直到最后一个 B 单元格包含数据
Posted
技术标签:
【中文标题】VBA - 如何自动填充到底部,直到最后一个 B 单元格包含数据【英文标题】:VBA - How to Autofill all the way to the bottom until the last B cell with data 【发布时间】:2020-05-05 17:17:03 【问题描述】:我录制了一个宏,并尝试使用 COUNTIF 函数一直自动填充 C 列,直到 B 列具有其最后一个单元格值。它不适用于新数据,因此我尝试编辑宏并将其替换为 Range("D2:D") 但这不起作用。
Sub COUNTIF()
'
' COUNTIF Macro
'
'
Range("D2").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-3],RC[-3])>1"
Range("D2").Select
Selection.AutoFill Destination:=Range("D2:D")
End Sub
【问题讨论】:
Find the last row 并在您的范围参考中使用它。 【参考方案1】:最好找到最后一个单元格。还要避免使用 select,因为它会减慢您的代码。
Sub COUNTIF()
Dim LastRowB As Long
LastRowB = Range("B" & Rows.Count).End(xlUp).Row
Range("D2").FormulaR1C1 = "=COUNTIF(C[-3],RC[-3])>1"
Range("D2: " & "D" & LastRowB).FillDown
End Sub
现在将您的 "=COUNTIF(C[-3],RC[-3])>1"
公式更改为您真正想要填写的任何内容。
【讨论】:
以上是关于VBA - 如何自动填充到底部,直到最后一个 B 单元格包含数据的主要内容,如果未能解决你的问题,请参考以下文章