VBA复制粘贴|在VBA中复制和粘贴的主要方法(带有示例)

在VBA中复制粘贴类似于在excel工作表中所做的操作,例如我们可以复制一个值并将其粘贴到另一个单元格中,也可以使用选择性粘贴仅粘贴这些值,在VBA中类似地,我们使用具有range属性的copy方法将一个值从一个单元格复制到另一个单元格并粘贴该值,我们使用工作表函数aste special或paste方法。

如何在VBA中复制粘贴?

以下是一些有关如何使用VBA在excel中复制粘贴的示例。

我们在excel中所做的基本操作是复制,剪切并将数据从一个单元格粘贴到另一个单元格。它也不需要特别的介绍。但是,学习VBA编码对于理解编码语言中的相同概念很重要。在VBA中复制粘贴是我们日常在excel中执行的日常任务。为了首先复制,我们需要确定要复制哪个单元格。

Example#1 –使用Range对象复制和粘贴值

您可以在此处下载此VBA复制粘贴Excel模板– VBA复制粘贴Excel模板

假设您在单元格A1中有单词“ Excel VBA”。

举例来说,如果您要复制单元格A1,则可以使用VBA RANGE对象。

代码:

 子Copy_Example()范围(“ A1”)。结束子 

引用单元格的那一刻,我们可以看到它的所有属性和方法。因此,选择“复制”.

代码:

 Sub Copy_Example()Range(“ A1”)。Copy End Sub 

选择方法后,请按空格键以查看Copy方法的参数。

它说 目的地。

这不过是您想在不选择PASTE方法的情况下在VBA中复制粘贴值的位置。

如果要粘贴在同一张纸上,则可以使用Range对象选择单元格。让我们说,如果我们想将值粘贴到B3单元格中,我们可以将目标放置为 “范围(“ B3”)”.

代码:

 Sub Copy_Example()Range(“ A1”)。Copy Destination:= Range(“ B3”)End Sub 

这将复制单元格A1中的数据并粘贴到单元格B3中。

我们还可以使用以下方法粘贴数据。

代码:

 Sub Copy_Example()Range(“ A1”)。Copy Range(“ B3”)。Select ActiveSheet.Paste End Sub 

首先,我们将从单元格A1中复制并选择数据,然后粘贴到单元格B3中。

示例2 –复制到同一工作簿中的另一个工作表

现在,如果要使用VBA宏从不同的工作表中复制粘贴值,则在Destination参数中,我们需要使用WORKSHEETS对象引用工作表名称,然后提及该WORKSHEET中单元格的范围。下面的代码将完成这项工作。

代码:

 Sub Copy_Example()Range(“ A1”)。Copy Destination:= Worksheets(“ Sheet2”)。Range(“ B3”)End Sub 

如果要复制特定工作表中的数据并粘贴到其他特定工作表中,则需要同时提及工作表的名称。

首先,我们需要提及复印纸。

工作表(“ Sheet1”)。范围(“ A1”)。复制

然后,在Destination参数中,我们需要提及目标工作表的名称和单元格的范围。

目标:= Worksheets(“ Sheet2”)。Range(“ B3”)

所以代码应该是这样的。

代码:

 Sub Copy_Example()工作表(“ Sheet1”)。Range(“ A1”)。复制目标:= Worksheets(“ Sheet2”)。Range(“ B3”)End Sub 

例3 –从一个工作簿复制到另一工作簿

我们已经看到了如何从工作表复制到同一工作簿中的另一个工作表。但是我们也可以从一个工作簿到另一个工作簿。

看一下下面的代码。

代码:

 子Copy_Example()工作簿(“工作簿1.xlsx”)。工作表(“ Sheet1”)。范围(“ A1”)。复制工作簿(“工作簿2.xlsx”)。激活ActiveWorkbook.Worksheets(“工作表2”)。选择ActiveSheet.Paste End Sub 

首先,它将从单元格A1中复制工作簿“ Book1.xlsx”中工作表“ Sheet1”中的数据。

Workbooks(“ Book 1.xlsx”)。Worksheets(“ Sheet1”)。Range(“ A1”)。Copy”

然后,它将激活工作簿“ Book 2.xlsx”。

工作簿(“ Book 2.xlsx”)。激活

在活动的工作簿中,它将选择工作表“ Sheet 2”

ActiveWorkbook.Worksheets(“ Sheet 2”)。Select

现在,在活动工作表中,它将粘贴

ActiveSheet.Paste

在VBA中使用复制粘贴的另一种方法

我们还有另一种方法可以将数据从一个单元格传输到另一个单元格。假设您在单元格A1中有单词“ Excel VBA”,并且需要在单元格B3中使用相同的单词。

我们已经看到一种方法是使用VBA复制和粘贴方法,现在我将向您介绍其他方法之一。查看下面的代码以了解。

代码:

 Sub Copy_Example1()Range(“ A1”)。Value = Range(“ B3”)。Value End Sub 

上面说的是,单元格A1中的值应该等于单元格B3中的值。

Range(“ A1”)。Value = Range(“ B3”)。Value

即使这不是复制粘贴方法,也仍然为我们的编码知识增加了更多价值。

VBA复制和粘贴值的主要方法

现在,我们将看到VBA复制和粘贴值的不同方法。假设您位于单元格A1中,如下图所示。

  • 如果要复制和粘贴,则需要在此处引用该单元格,而只需使用Selection的属性即可。复制方法。

代码:

 Sub Copy_Example1()选择。复制目标:= Range(“ B3”)End Sub 

或者

 Sub Copy_Example1()ActiveCell.Copy目标:= Range(“ B3”)End Sub 
  • 如果要复制工作表的整个使用范围,则可以使用以下代码。

代码:

 Sub Copy_Example2()工作表(“ Sheet1”)。UsedRange.Copy目的地:= Worksheets(“ Sheet2”)。Range(“ A1”)End Sub 

这将在工作表“ Sheet1”中复制整个使用范围,并将相同范围粘贴到工作表“ Sheet2”中