VBA Kopiëren Plakken - Topmanieren om te kopiëren en plakken in VBA (met voorbeelden)

Kopiëren Plakken in VBA is vergelijkbaar met wat we doen in Excel-werkblad, zoals we een waarde kunnen kopiëren en in een andere cel kunnen plakken, we kunnen ook plakken speciaal gebruiken om alleen de waarden te plakken, op dezelfde manier gebruiken we in VBA de kopieermethode met bereikeigenschap om kopieer een waarde van de ene cel naar de andere en om de waarde te plakken gebruiken we de werkbladfunctie plak speciaal of plak methode.

Hoe te kopiëren en plakken in VBA?

Hieronder vindt u enkele voorbeelden van kopiëren en plakken in Excel met VBA.

Het belangrijkste dat we in Excel doen, is dat we de gegevens kopiëren, knippen en plakken van de ene cel naar de andere. Het vereist ook geen speciale introductie. Het leren van VBA-codering is echter belangrijk om hetzelfde concept in codeertaal te begrijpen. Copy Paste in VBA is de routinetaak die we dagelijks in Excel uitvoeren. Om eerst te kunnen kopiëren, moeten we beslissen welke cel we willen kopiëren.

Voorbeeld 1 - Waarden kopiëren en plakken met bereikobject

Stel dat u het woord "Excel VBA" in cel A1 hebt staan.

Laten we zeggen dat als u bijvoorbeeld de cel A1 wilt kopiëren, we het VBA RANGE-object kunnen gebruiken.

Code:

Sub Copy_Example () Bereik ("A1"). Einde Sub

Op het moment dat u naar de cel verwijst, kunnen we alle eigenschappen en methoden ermee zien. Selecteer dus de methode ' Kopiëren'.

Code:

Sub Copy_Example () Bereik ("A1") Kopieer End Sub

Nadat u de methode hebt geselecteerd, drukt u op de spatiebalk om het argument van de kopieermethode te zien.

Er staat bestemming.

Dit is niets, maar waar wil je waarden in VBA kopiëren en plakken zonder de PASTE-methode te selecteren.

Als we in hetzelfde blad plakken, kunnen we de cel selecteren met behulp van het Range-object. Laten we zeggen dat als we de waarde in de B3-cel willen plakken, we de bestemming kunnen plaatsen als 'Bereik (' B3 ').'

Code:

Sub Copy_Example () Bereik ("A1"). Kopieerbestemming: = Bereik ("B3") End Sub

Hiermee worden de gegevens uit cel A1 gekopieerd en in cel B3 geplakt.

We kunnen ook de onderstaande methode gebruiken om de gegevens te plakken.

Code:

Sub Copy_Example () Range ("A1"). Copy Range ("B3"). Selecteer ActiveSheet.Paste End Sub

Eerst kopiëren en selecteren we de gegevens uit cel A1 en plakken in cel B3.

Voorbeeld # 2 - Kopieer naar een ander werkblad in dezelfde werkmap

Als we nu de waarde van de verschillende werkbladen willen kopiëren en plakken met behulp van de VBA-macro, dan moeten we in het argument Bestemming naar de bladnaam verwijzen met behulp van het WORKSHEETS-object en vervolgens het celbereik in dat WERKBLAD vermelden. De onderstaande code zal het werk doen.

Code:

Sub Copy_Example () Bereik ("A1"). Kopieerbestemming: = Werkbladen ("Blad2"). Bereik ("B3") End Sub

Als we de gegevens van een bepaald blad willen kopiëren en in een ander bepaald blad willen plakken, moeten we beide namen van de bladen vermelden.

Allereerst moeten we het kopieerblad vermelden.

Werkbladen ("Blad1"). Bereik ("A1"). Kopiëren

Vervolgens moeten we in het bestemmingsargument de beoogde werkbladnaam en het bereik van de cel vermelden.

Destination:=Worksheets("Sheet2").Range("B3")

So the code should like this.

Code:

Sub Copy_Example() Worksheets("Sheet1").Range("A1").Copy Destination:=Worksheets("Sheet2").Range("B3") End Sub

Example #3 - Copy from One Workbook to another Workbook

We have seen how to copy from worksheet to another worksheet in the same workbook. But we can also do this from one workbook to another workbook.

Take a look at the below code.

Code:

SubCopy_Example() Workbooks("Book 1.xlsx").Worksheets("Sheet1").Range("A1").Copy Workbooks("Book 2.xlsx").Activate ActiveWorkbook.Worksheets("Sheet 2").Select ActiveSheet.Paste End Sub

Firstly it will copy the data from the worksheet “Sheet1” in the workbook “Book1.xlsx” from the cell A1.

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

Then it will activate the workbook “Book 2.xlsx”.

Workbooks("Book 2.xlsx").Activate

In the active workbook, it will select the worksheet “Sheet 2.”

ActiveWorkbook.Worksheets("Sheet 2").Select

Now in the active sheet, it will paste.

ActiveSheet.Paste

Alternative Way for using Copy-Paste in VBA

We have one more alternative way of having the data from one cell to another cell. Assume you have the word “Excel VBA” in the cell A1 and you need the same to come in cell B3.

One method we have seen is using the VBA copy and paste method. Now I will show you one of the alternative ways. Look at the below piece of code to understand.

Code:

Sub Copy_Example1() Range("A1").Value = Range("B3").Value End Sub

The above says whatever the value is there in the cell A1 should be equal to the value in the cell B3.

Range("A1").Value = Range("B3").Value

Even though this is not a copy and paste method still adds more value to our coding knowledge.

Top Ways of VBA Copy and Paste as Values

Now we will see different ways of VBA copy and paste values. Assume you are in the cell A1 as shown in the below image.

  • If we want to copy and paste, we need to reference the cell here. Rather we can just use a property of Selection. Copy method.

Code:

Sub Copy_Example1() Selection.Copy Destination:=Range("B3") End Sub

OR

Sub Copy_Example1() ActiveCell.Copy Destination:=Range("B3") End Sub
  • If you want to copy the entire used range of the worksheet, you can use the below code.

Code:

Sub Copy_Example2 () Worksheets ("Sheet1"). UsedRange.Copy Destination: = Worksheets ("Sheet2"). Range ("A1") End Sub

Hiermee wordt het volledige gebruikte bereik in het werkblad "Blad1" gekopieerd en hetzelfde in het werkblad "Blad2" geplakt.

Interessante artikelen...