VBA koopiate kleepimine - VBA kopeerimise ja kleepimise parimad viisid (koos näidetega)

Lang L: none (table-of-contents)

VBA-sse Kopeeri kleepimine sarnaneb see, mida teeme Exceli töölehel, näiteks võime kopeerida väärtuse ja kleepida selle teise lahtrisse, samuti saame kasutada väärtuste kleepimiseks spetsiaalset kleepimist, samamoodi VBA-s kopeerige väärtus ühest lahtrist teise ja väärtuse kleepimiseks kasutame töölehe funktsiooni paste special või paste meetodit.

Kuidas kleepida VBA-sse?

Allpool on toodud mõned näited selle kohta, kuidas VBA abil Excelisse kopeerida.

Põhiline, mida excelis teeme, on see, et kopeerime, lõikame ja kleepime andmed ühest lahtrist teise lahtrisse. See ei vaja ka erilist tutvustamist. Kuigi VBA-kodeerimise õppimine on oluline, et mõista sama mõistet kodeerimiskeeles. Copy Paste in VBA on rutiinne ülesanne, mida teeme excelis igapäevaselt. Esmalt kopeerimiseks peame otsustama, millise lahtri kopeerida.

Näide # 1 - väärtuste kopeerimine ja kleepimine vahemiku objekti abil

Oletame, et lahtris A1 on sõna „Excel VBA”.

Oletame näiteks, et kui soovite kopeerida lahtrit A1, saame kasutada objekti VBA RANGE.

Kood:

Alamkoopia_näide () vahemik ("A1"). Lõpeta alam

Hetkel, kui viidate lahtrile, näeme koos sellega kõiki omadusi ja meetodeid. Nii et valige meetod " Kopeeri".

Kood:

Alamkoopia_näide () vahemik ("A1"). Kopeeri lõigu alamkopeerimine

Pärast meetodi valimist vajutage tühikuklahvi, et näha meetodi Kopeerimine argumenti.

Seal on kirjas Sihtkoht.

See pole midagi, kuid kuhu soovite VBA-s väärtused kopeerida ja kleepida, ilma et valiksite meetodi PASTE.

Kui kleepime samale lehele, saame lahtri valida objekti Range abil. Ütleme nii, et kui tahame väärtuse lahtrisse B3 kleepida, võime sihtkohaks panna vahemiku „Range („ B3 ”).”

Kood:

Alamkoopia_näide () vahemik ("A1"). Kopeerimise sihtkoht: = vahemik ("B3") Lõpp alam

See kopeerib lahtrist A1 andmed ja kleebib lahtrisse B3.

Andmete kleepimiseks võime kasutada ka allpool toodud meetodit.

Kood:

Alamkopeeri_näide () vahemik ("A1"). Kopeerimisvahemik ("B3"). Valige ActiveSheet.Paste End Sub

Esiteks kopeerime ja valime lahtrist A1 andmed ning kleepime lahtrisse B3.

Näide # 2 - kopeerimine teisele töölehele samas töövihikus

Kui nüüd soovime VBA makro abil erinevatelt töölehtedelt väärtuse kopeerida-kleepida, peame argumendis Sihtkoht viitama lehe nimele objekti WORKSHEETS abil, seejärel mainima selle TÖÖLEHT lahtrite vahemikku. Allpool olev kood täidab seda tööd.

Kood:

Alamkopeeri_näide () vahemik ("A1"). Kopeerimise sihtkoht: = töölehed ("leht2"). Vahemik ("B3") lõpp-alam

Kui tahame andmed kopeerida konkreetselt lehelt ja tahame kleepida teise kindla lehe juurde, peame mainima mõlemad lehtede nimed.

Esiteks peame mainima kopeerimislehte.

Töölehed ("Sheet1"). Vahemik ("A1"). Kopeeri

Seejärel peame argumendis Sihtkoht mainima lahtri sihitud töölehe nime ja vahemikku.

Sihtkoht: = töölehed ("Sheet2"). Vahemik ("B3")

Nii et kood peaks see meeldima.

Kood:

Alamkopeeri_näide () töölehed ("leht1"). Vahemik ("A1"). Koopia sihtkoht: = töölehed ("leht2"). Vahemik ("B3") lõpp-alam

Näide # 3 - kopeerimine ühest töövihikust teise töövihikusse

Oleme näinud, kuidas samas töövihikus töölehelt teisele töölehele kopeerida. Kuid saame seda teha ka ühest töövihikust teise.

Heitke pilk allpool olevale koodile.

Kood:

SubCopy_Example () töövihikud ("Book 1.xlsx"). Töölehed ("Sheet1"). Vahemik ("A1"). Töövihikute kopeerimine ("Book 2.xlsx"). Aktiveerige ActiveWorkbook.Worksheets ("Sheet 2"). Valige ActiveSheet.Paste End Sub

Esiteks kopeerib see lahtrist A1 töövihiku „Book1.xlsx” töölehe „Sheet1” andmed.

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:

Alamkoopia_näide2 () töölehed ("leht1"). UsedRange.Copy sihtkoht: = töölehed ("leht2"). Vahemik ("A1") lõpp-alam

See kopeerib töölehel „Leht1” kogu kasutatud vahemiku ja kleebib sama töölehele „Leht2”.

Huvitavad Artiklid...