2

数式をセルから右側の別のセルにドラッグしようとしています(つまり、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

エラーは「オブジェクトが必要です」です

4

2 に答える 2

4

以下のコードを試してください:

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
于 2013-04-30T13:15:49.507 に答える
1

範囲はオブジェクトなので、これらの変数に値を割り当てるときは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
于 2013-04-30T13:05:47.490 に答える