VBAでコピー&ペーストを繰り返す方法

VBAでコピー&ペーストを繰り返す方法

私が達成する必要があるのは、以下の 2 番目の列のとおりです。私は VBA の初心者なので、どんな助けでも大歓迎です。

abc1200                        abc1200
MACHINE                        
supplier
cost
address
invoice number

abc2400                        abc2400
MACHINE
supplier
cost
address
invoice number
.
.
.

記録したコードは以下のとおりです。選択範囲で繰り返すだけです

 ActiveCell.Offset(0, -1).Range("A1").Select
 Selection.Copy
 ActiveCell.Offset(0, 1).Range("A1").Select
 ActiveSheet.Paste
 ActiveCell.Offset(6, -1).Range("A1").Select
 Application.CutCopyMode = False
 Selection.Copy
 ActiveCell.Offset(0, 1).Range("A1").Select
 ActiveSheet.Paste
 ActiveCell.Offset(6, -1).Range("A1").Select
 Application.CutCopyMode = False
 Selection.Copy
 ActiveCell.Offset(0, 1).Range("A1").Select
 ActiveSheet.Paste

答え1

コピー/貼り付けはマクロ記録中にのみ必要/使用されます。VBA では、 などの値を直接割り当てる方がはるかに簡単です
targetcell.value = sourcecell.value

したがって、最初の 4 行は次のようになります。
ActiveCell.Offset(0, 1).Range("A1").Value = ActiveCell.Offset(0, -1).Range("A1").Value

使用する予定のセルに応じて、セル名を直接指定して、これをより簡単な形式に縮小することもできます。

関連情報