自动填充不会从所需的单元格开始,也不会填充
Posted
技术标签:
【中文标题】自动填充不会从所需的单元格开始,也不会填充【英文标题】:Autofill won't start at desired cell and won't fill down 【发布时间】:2018-05-31 14:21:40 【问题描述】:我正在尝试将此公式从 AD2 自动填充到数据集的末尾。但是,相反,我的宏将使用 AD1 上的公式(列标题)而不是填写。我已经这样做了好几次了,但我不知道为什么它现在起作用了。令人讨厌的公式是从单元格中读取几列(AB),然后声明三个字符串之一。
Dim lastRow As Long
lastRow = Cells(Rows.Count).End(xlUp).Row
Range("AD2").Select
Selection.FormulaR1C1 = _
"=IF(NOT(ISERROR(FIND(""iMac"",RC[-2]))),""iMac"",IF(NOT(ISERROR(FIND(""MacBook"",R[-21]C[-2]))),""MacBook"",""N/A""))"
Range("AD2").Select
Selection.AutoFill Destination:=Range("AD2:AD" & lastRow)
【问题讨论】:
lastRow = Cells(Rows.Count,"A").End(xlUp).Row
你需要统计特定的列
【参考方案1】:
尝试使用ActiveSheet.Cells(ActiveSheet.Rows.Count, "AB").End(xlUp).Row
修改你的var lastRow
Sub test()
Dim lastRow As Long
lastRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, "AB").End(xlUp).Row
Range("AD2").Select
Selection.FormulaR1C1 = _
"=IF(NOT(ISERROR(FIND(""iMac"",RC[-2]))),""iMac"",IF(NOT(ISERROR(FIND(""MacBook"",R[-21]C[-2]))),""MacBook"",""N/A""))"
Range("AD2").Select
Selection.AutoFill Destination:=Range("AD2:AD" & lastRow)
End Sub
【讨论】:
【参考方案2】:试试这个。您的单元格中缺少一列(我使用了 A 列,因此需要更改以适应),您无需选择任何内容。事实上,您可能根本不需要自动填充,只需一次性应用到整个范围即可。
Sub y()
Dim lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
With Range("AD2")
.FormulaR1C1 = _
"=IF(NOT(ISERROR(FIND(""iMac"",RC[-2]))),""iMac"",IF(NOT(ISERROR(FIND(""MacBook"",R[-21]C[-2]))),""MacBook"",""N/A""))"
.AutoFill Destination:=Range("AD2:AD" & lastRow)
End With
End Sub
【讨论】:
以上是关于自动填充不会从所需的单元格开始,也不会填充的主要内容,如果未能解决你的问题,请参考以下文章