VBA拖动公式从左到右

我正在尝试将一个公式从一个单元格拖到另一个单元格的右侧(即cellA1 [formula: A2 + A3] -> cellB1 [formula: B2+B3]) 。 这是我有什么:

 Dim lastColumn As Long lastColumn = Workbook2.Worksheets(7).Cells(1, Columns.Count).End(xlToLeft).Column cellSource = Workbook2.Worksheets(7).Cells(3, lastColumn) cellTarget = Workbook2.Worksheets(7).Cells(3, lastColumn + 1) cellSource.AutoFill Destination:=cellTarget, Type:=xlFillDefault 

错误是“需要对象”

尝试下面的代码:

 Dim lastColumn As Long, cellSource As Range, cellTarget As Range lastColumn = Workbook2.Worksheets(7).Cells(1, Columns.Count).End(xlToLeft).Column Set cellSource = Workbook2.Worksheets(7).Range(Cells(3, lastColumn).Address) Set cellTarget = Workbook2.Worksheets(7).Range(Cells(3, lastColumn), Cells(3, lastColumn + 1)) cellSource.AutoFill Destination:=cellTarget, Type:=xlFillDefault 

范围是对象,因此在为这些variables赋值时应该使用set关键字:

尝试这个:

 Dim lastColumn As Long lastColumn = Workbook2.Worksheets(7).Cells(1, Columns.Count).End(xlToLeft).Column set cellSource = Workbook2.Worksheets(7).Cells(3, lastColumn) set cellTarget = Workbook2.Worksheets(7).Cells(3, lastColumn + 1) cellSource.AutoFill Destination:=cellTarget, Type:=xlFillDefault