如何在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

您甚至可以将其简化为更简单的形式,直接指定单元格名称,具体取决于您计划使用的单元格。

相关内容