как повторно копировать и вставлять в VBA

как повторно копировать и вставлять в VBA

Мне нужно достичь того, что указано во второй колонке ниже. Я новичок в 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, и т. д.

Итак, ваши первые четыре строки будут просто:
ActiveCell.Offset(0, 1).Range("A1").Value = ActiveCell.Offset(0, -1).Range("A1").Value

Вы даже можете упростить это до более простых форм, напрямую указывая имена ячеек, в зависимости от того, какие ячейки вы планируете использовать.

Связанный контент