Špeciálne prilepenie VBA 5 najlepších spôsobov použitia špeciálnej funkcie VBA Paste?

Podobne ako v pracovnom hárku, keď kopírujeme údaje a vkladáme ich do iného rozsahu buniek, máme špeciálnu metódu vkladania, ktorá nám umožňuje vkladať údaje ako také alebo iba do vzorcov alebo iba do hodnôt a rovnakým spôsobom môžeme použiť príkaz Paste Special vo VBA pomocou metóda vlastnosti rozsahu nasledujúcim rozsahom. paste special () poskytujúci požadovaný typ v zátvorkách.

Prilepiť špeciálne do VBA

Paste Special in Excel slúži v našej každodennej práci mnohými spôsobmi. Pomocou špeciálnej pasty dokážeme oveľa viac vecí ako obvykle. Kopírovanie a vkladanie je všade vo svete počítačov. Ale pasta špeciálna je pokročilá vec v programe Excel.

Rovnako ako bežné vloženie aplikácie Excel do formátu VBA, aj tu máme špeciálnu metódu vkladania skopírovaných údajov. Kopírovanie vecí v programe Excel nie je pre používateľov programu Excel nič zvláštne, kopírujú, vkladajú a väčšinou na rôzne účely slúžia na špeciálne účely lepením paste.

V bežnom programe Excel obsahuje vloženie veľa možností, ako je vloženie iba hodnôt, vloženie vzorcov, vloženie formátov atď.…

Špeciálne prilepenie musíte tiež vkladať, prevádzkovať, preskakovať medzery a transponovať vo VBA. Všetky parametre máme metódou Paste Special .

Vzorec pasty Special vo VBA

Ďalej uvádzame vzorec pre vloženie špeciálu vo VBA

Vložiť špeciálne je k dispozícii pre objekt rozsahu VBA, pretože po skopírovaní údajov ich vložíme do rozsahu buniek, takže s objektom rozsahu je k dispozícii špeciálna metóda vloženia .

Typ vloženia: Po skopírovaní údajov, ako ich chcete vložiť. Či už chcete prilepiť hodnoty, vzorce, formáty, validáciu atď … Nižšie je uvedený kompletný zoznam možností dostupných v časti Typ prilepenia.

Prilepiť špeciálnu operáciu: Pri vkladaní chcete vykonať akýkoľvek druh operácií, ako je sčítanie, odčítanie, delenie, násobenie alebo žiadne.

  • (Vynechať medzery): Ak chcete medzery vynechať, môžete zvoliť PRAVDA alebo NEPRAVDA.
  • (Transpose): Ak chcete transponovať údaje, môžete zvoliť TRUE alebo FALSE.

Príklady vloženia špeciálu v programe Excel VBA

Nasledujú príklady špeciálneho vkladania vo VBA.

Príklad č. 1 - Prilepte iba hodnoty pomocou špeciálnej funkcie VBA PasteSpecial

V prvom príklade vykonáme vkladanie iba hodnôt pomocou paste special. Predpokladajme, že nižšie sú údaje, ktoré máte v názve hárka s názvom Údaje o predaji.

Teraz vykonáme úlohu kopírovania a prilepenia pomocou niekoľkých špeciálnych metód prilepenia. Postupujte podľa nasledujúcich krokov.

Krok 1: Najskôr vytvorte názov makra.

Krok 2: Najskôr skopírujte rozsah A1 až D14 z názvu hárka „Údaje o predaji“. Ak chcete skopírovať rozsah, použite nasledujúci kód.

Kód:

Rozsah („A1: D14“). Kópia

Krok 3: Po skopírovaní údajov prilepíme hodnoty z G1 do J14. Najskôr uveďte rozsah.

Kód:

Rozsah ("G1: J14")

Krok 4: Po výbere rozsahu musíme vložiť. Takže vložte bodku (.) A vyberte metódu Prilepiť špeciálne.

Kód:

Sub PasteSpecial_Example1 () Range ("A1: D14"). Rozsah kopírovania ("G1: J14"). PasteSpecial End Sub

Krok 5: V rozbaľovacom zozname vyberte možnosť „xlPasteValues“.

Kód:

Sub PasteSpecial_Example1 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteValues ​​End Sub

Krok 6: Teraz tento kód spustite pomocou klávesu F5 alebo manuálne a uvidíte, čo sa stane.

Náš kód teda skopíroval údaje z A1 do D14 a vložil z G1 do J14 ako hodnoty.

Bolo vykonané za úlohu klávesové skratky Excel v liste ALT + E + S + V .

Príklad č. 2 - Prilepenie všetkých pomocou nástroja VBA PasteSpecial

Teraz uvidíme, čo sa stane, ak vykonáme úlohu xlPasteAll.

Kód:

Sub PasteSpecial_Example2() Range("A1:D14").Copy Range("G1:J14").PasteSpecial xlPasteAll End Sub

Now, if you run this code manually through the run option or by pressing the F5 key, we will have as it is data.

Example #3 - Paste Formats using VBA PasteSpecial Function

Now we will see how to paste only formats. The Below code would do the job for us.

Code:

Sub PasteSpecial_Example3() Range("A1:D14").Copy Range("G1:J14").PasteSpecial xlPasteFormats End Sub

If you run this code using the F5 key or manually, we will get the only format of the copied range, nothing else.

Example #4 - Paste Column Width using VBA Paste Special

Now we will see how to paste only column width from the copied range. For this, I have increased the column width for one of my data columns.

Apply the below code it will paste only the column width of the copied range.

Code:

Sub PasteSpecial_Example3() Range("A1:D14").Copy Range("G1:J14").PasteSpecial xlPasteColumnWidths End Sub

Run this code and see the difference in the column width.

Now we can see Sales column width has been increased to the column width of our copied range column.

Example #5 - Copy the Data from One Sheet to Another Sheet using VBA Paste Special Option

We have seen how to copy and paste the data on the same sheet. Now we will how to paste from one sheet to another sheet.

Step 1: Before we select the range, we need to tell from which sheet we need to select the data.

Code:

Sub PasteSpecial_Example5() Worksheets ("Sales Data") End Sub

Step 2: After selecting the sheet by its name, then we need to select the range in that sheet. The copy it.

Code:

Sub PasteSpecial_Example5() Worksheets("Sales Data").Range("A1:D14").Copy End Sub

The above code says in the sheet name “Sales Data” copy the Range, (“A1:D14”)

Step 3: Since we are pasting it in a different sheet, we need to select the sheet by its name.

Code:

Sub PasteSpecial_Example5() Worksheets("Sales Data").Range("A1:D14").Copy Worksheets ("Month Sheet") End Sub

Step 4: Now, in the sheet “Month Sheet,” select the range.

Code:

Sub PasteSpecial_Example5() Worksheets("Sales Data").Range("A1:D14").Copy Worksheets("Month Sheet").Range ("A1:D14") End Sub

Step 5: Using Paste special, we will be pasting values and format.

Code:

Sub PasteSpecial_Example5() Worksheets("Sales Data").Range("A1:D14").Copy Worksheets("Month Sheet").Range("A1:D14").PasteSpecial xlPasteValuesAndNumberFormats End Sub

Step 6: We are not only pasting values and format using VBA Paste Special, but we are pasting it as TRANSPOSE as well.

Code:

Sub PasteSpecial_Example5() Worksheets("Sales Data").Range("A1:D14").Copy Worksheets("Month Sheet").Range("A1:D14").PasteSpecial xlPasteValuesAndNumberFormats, Transpose:=True End Sub

Now run this code. It will copy and transpose the data to the “Month Sheet.”

Things to Remember About Excel VBA PasteSpecial Function

  • Ak chcete vynechať medzery, musíte predvolene zadať argument ako PRAVDA. Trvá to NEPRAVDA.
  • Ak chcete údaje transponovať, musíme zvoliť transpozíciu ako PRAVDA.
  • Naraz môžeme vykonať iba jednu špeciálnu pastu.

Zaujímavé články...