自动填充宏到长度

时间:2012-06-27 15:21:40

标签: excel vba excel-vba

我正在尝试填充我在D1中的公式并将D填充到C的长度。我正在使用以下宏并且我收到以下错误 - 编译错误:预期结束

Sub Macro3()

Macro3 Macro



  Range("D1").Select
  ActiveCell.FormulaR1C1 = "=RC[-2]*(-1)+RC[-1]"
  Range("D1").Select

  Dim LastRow As Long

  With Sheets("Sheet2")
  LastRow = Range("C" & Rows.Count).End(xlUp).Row
  Range("D1").AutoFill Destination:=Range("D2:D" & LastRow)
End Sub

1 个答案:

答案 0 :(得分:3)

你的问题很简单。我使用宏录制器自动填充公式范围,发现目标范围以公式范围开头,所以

Range("D1").AutoFill Destination:=Range("D2:D" & LastRow)

应该是:

Range("D1").AutoFill Destination:=Range("D1:D" & LastRow)

这是工作代码,修复和清理了一点:)

Sub Macro3()

With Sheets("Sheet1")

  Dim LastRow As Long
  LastRow = Range("C" & Rows.Count).End(xlUp).Row

  With Range("D1")
    .FormulaR1C1 = "=RC[-2]*(-1)+RC[-1]"
    .AutoFill Destination:=Range("D1:D" & LastRow)
  End With

End With

End Sub