0

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
4

1 に答える 1

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
于 2012-06-27T15:42:53.560 に答える