自动填充不会从所需的单元格开始,也不会填充

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

【讨论】:

以上是关于自动填充不会从所需的单元格开始,也不会填充的主要内容,如果未能解决你的问题,请参考以下文章

WPS表格双击不能自动填充

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

合并单元格输入奇数和偶数后自动填充不一样的颜色,如图合并1后,BCDEF就填充颜色,合并2,就填充另一种?

将日期范围自动填充到excel单元格中

excel如何设置输入数字后单元格自动填充颜色

使用In-cell下拉列表中的值自动填充单元格 - VBA