VBA Copy Paste - A VBA másolásának és beillesztésének legjobb módjai (példákkal)

A VBA másolás beillesztése hasonló ahhoz, amit az excel munkalapon csinálunk, például, hogy átmásolhatunk egy értéket és beilleszthetünk egy másik cellába, valamint a speciális beillesztéssel használhatjuk csak az értékek beillesztését, hasonlóan a VBA-ban a másolási módszert is használjuk tartomány tulajdonsággal átmásol egy értéket egyik cellából a másikba, és az érték beillesztéséhez a munkalap függvény beillesztése speciális vagy beillesztési módszert használjuk.

Hogyan lehet másolni a beillesztést a VBA-ba?

Az alábbiakban bemutatunk néhány példát arra, hogyan lehet az Excel-be másolni-beilleszteni a VBA használatával.

Az alapvető dolog, amit az excel programban elvégzünk, az, hogy lemásoljuk, kivágjuk és beillesztjük az adatokat az egyik cellából a másik cellába. Nem igényel különösebb bevezetést sem. Míg azonban a VBA kódolás elsajátítása fontos, hogy ugyanazt a fogalmat megértsük a kódoló nyelvben. A VBA másolás beillesztése a rutinfeladat, amelyet az excel programban nap mint nap végzünk. Az első másoláshoz el kell döntenünk, hogy melyik cellát másoljuk.

1. példa - Értékek másolása és beillesztése a Range Object használatával

Tegyük fel, hogy az A1 cellában szerepel az „Excel VBA” szó.

Tegyük fel például, hogy ha le akarja másolni az A1 cellát, használhatjuk a VBA RANGE objektumot.

Kód:

Almásolás_Példa () Tartomány ("A1"). End Sub

Abban a pillanatban, amikor a cellára hivatkozol, láthatjuk az összes tulajdonságot és módszert vele. Válassza ki a „ Másolás” módszert .

Kód:

Almásolás_Példa () Tartomány ("A1"). Másolás Vége Al

A módszer kiválasztása után nyomja meg a szóköz billentyűt a Másolás módszer argumentumának megtekintéséhez.

Azt írja: Destination.

Ez nem semmi, de hová akarod másolni-beilleszteni az értékeket a VBA-ba a PASTE módszer kiválasztása nélkül.

Ha ugyanazon a lapon illesztünk be, akkor a Range objektum segítségével kiválaszthatjuk a cellát. Tegyük fel, hogy ha be akarjuk illeszteni az értéket a B3 cellába, akkor a rendeltetési helyet „Tartomány („ B3 ”) névre tehetjük .”

Kód:

Almásolás_Példa () Tartomány ("A1"). Másolási cél: = Tartomány ("B3") Vége

Ez átmásolja az adatokat az A1 cellából, és beilleszti a B3 cellába.

Az adatok beillesztéséhez az alábbi módszert is felhasználhatjuk.

Kód:

Almásolás_Példa () Tartomány ("A1"). Másolási tartomány ("B3"). Válassza az ActiveSheet.Paste End Sub

Először átmásoljuk és kiválasztjuk az adatokat az A1 cellából, és beillesztjük a B3 cellába.

2. példa - Másolás egy másik munkalapra ugyanabban a munkafüzetben

Most, ha másolni akarjuk az értéket a különböző munkalapokról a VBA makró segítségével, akkor a Cél argumentumban meg kell utalnunk a lap nevét a WORKSHEETS objektum használatával, majd meg kell említenünk az adott MUNKALAP cellatartományát. Az alábbi kód elvégzi a munkát.

Kód:

Almásolat_Példa () Tartomány ("A1"). Másolási cél: = Munkalapok ("2. lap"). Tartomány ("B3") Vége al

Ha le akarjuk másolni az adatokat egy adott lapról, és be akarunk illeszteni egy másik meghatározott lapba, meg kell említenünk a lapok mindkét nevét.

Először meg kell említenünk a másoló lapot.

Munkalapok ("1. lap"). Tartomány ("A1"). Másolás

Ezután a Destination argumentumban meg kell említenünk a cella megcélzott munkalap nevét és tartományát.

Cél: = Munkalapok ("2. lap"). Tartomány ("B3")

Tehát a kódnak ennek kell lennie.

Kód:

Sub Copy_Példa () Munkalapok ("Sheet1"). Tartomány ("A1"). Copy Destination: = Munkalapok ("Sheet2"). Range ("B3") Sub Sub

3. példa - Másolás egyik munkafüzetből egy másik munkafüzetbe

Láttuk, hogyan kell másolni munkalapról egy másik munkalapra ugyanabban a munkafüzetben. De ezt megtehetjük egyik munkafüzetből a másikba.

Vessen egy pillantást az alábbi kódra.

Kód:

SubCopy_Example () Munkafüzetek ("Book 1.xlsx"). Munkalapok ("Sheet1"). Tartomány ("A1"). Munkafüzetek másolása ("Book 2.xlsx"). Aktiválja az ActiveWorkbook.Worksheets ("2. lap") elemet. ActiveSheet.Paste End Sub

Először az A1 cellából átmásolja az adatokat a „Sheet1” munkalapról a „Book1.xlsx” munkafüzetbe.

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 () munkalapok ("Sheet1"). UsedRange.Copy Destination: = munkalapok ("Sheet2"). Range ("A1") End Sub

Ez a teljes használt tartományt átmásolja a „Sheet1” munkalapba, és ugyanezt illeszti a „Sheet2” munkalapba.

érdekes cikkek...