Ako použiť VBA PasteSpecial a zachovať formátovanie zdroja v programe Excel

  • Zdieľajte To
Hugh West

Sú však situácie, keď chceme kopírovať viac ako len text. Môžeme z nich skopírovať všetky možnosti Excelu, ako je podmienené formátovanie, overovanie údajov, formátovanie dátových typov a estetické funkcie, ako sú okraje a farby buniek. Možno obdivujete farebnú schému svojho kolegu, ale požadujete statické údaje, alebo možno sú vzorce fantastické, ale nepáči sa vám farebná schéma.V tomto tutoriáli si ukážeme VBA PasteSpecial a zachovať formátovanie zdroja v programe Excel.

Stiahnite si cvičebnicu

Stiahnite si tento cvičebný zošit, aby ste si počas čítania tohto článku precvičili svoje zručnosti.

VBA PasteSpecial.xlsm

4 jednoduché príklady na použitie VBA PasteSpecial a zachovanie formátovania zdroja v programe Excel

Ukážeme si štyri príklady použitia špeciálnej funkcie paste v VBA pri zachovaní zdrojového formátu v nižšie uvedených častiach. Tu je vzorový súbor údajov, ktorý použijeme na kopírovanie a vkladanie.

1. Pridanie vstupného poľa pomocou VBA PasteSpecial a zachovanie formátovania zdroja v programe Excel

V prvom rade. Pomocou poľa vyberieme rozsah a potom ho vložíme do inej bunky. Ak to chcete urobiť, postupujte podľa nasledujúcich krokov.

Krok 1:

  • Najprv stlačte Alt + F11 začať Makro .
  • Potom kliknite na Vložiť, vybrať Modul možnosť.

Krok 2:

  • Vložte nasledujúci kód VBA.
 Sub PasteSpecialKeepFormat() 'deklarujte CopyCell a PasteCell ako premenné rozsahu Dim CopyCell As Range, PasteCell As Range 'Dajte názov vstupnému rámčeku xTitleId = "ExcelWIKI" 'Nastavte rozsah kopírovania, ktorý sa vyberie z pracovného hárka Set CopyCell = Application.Selection 'Nastavte vstupný rámček, z ktorého sa má vybrať rozsah na kopírovanie Set CopyCell = Application.InputBox("Select Range to Copy :", xTitleId, CopyCell.Address,Type:=8) 'Nastavte vstupné pole na prevzatie rozsahu, do ktorého sa má vložiť Set PasteCell = Application.InputBox("Paste to any blank cell:", xTitleId, Type:=8) 'Príkaz na kopírovanie vybraného rozsahu CopyCell.Copy 'Príkaz na vloženie rozsahu PasteCell.Parent.Activate 'Príkaz na vloženie buniek, aby sa zachovalo zdrojové formátovanie PasteCell.PasteSpecial xlPasteValuesAndNumberFormats PasteCell.PasteSpecial xlPasteFormatsApplication.CutCopyMode = False End Sub 

Krok 3:

  • Uložiť programu a stlačte F5 na jeho spustenie.
  • Po objavení sa 'ExcelWIKI' vyberte rozsah $B$4:$C$11 .
  • Kliknite na . OK .

Krok 4:

  • Vyberte ľubovoľnú prázdnu bunku, ktorú chcete vložiť.
  • Potom kliknite na tlačidlo V PORIADKU.

  • Preto získate hodnotu vloženia tak, že zachováte formát.

Prečítajte si viac: Rozdiel medzi Vložiť a Vložiť špeciálne v programe Excel

2. Použitie VBA PasteSpecial na výber rozsahu a zachovanie zdrojového formátovania v programe Excel

Na stránke VBA , môžete tiež určiť rozsahy a skopírovať a vložiť ich pri zachovaní zdrojového formátovania. Ak to chcete urobiť, postupujte podľa nižšie uvedených krokov.

Krok 1:

  • Tlač Alt + F11 otvoriť Makro .
  • Vytvorenie nového modulu z Vložte
  • Jednoducho vložte nasledujúce VBA kód pre rozsah B4:C11 .
 Sub pasteSpecial_KeepFormat() 'vyberte rozsah na kopírovanie Range("B4:C11").Copy 'vyberte bunku na vloženie 'Príkaz na vloženieSpecial zachováva formát Range("E4").PasteSpecial xlPasteAllUsingSourceTheme End Sub 

Krok 2:

  • Nakoniec program uložte a stlačte F5 Následne sa zobrazia zmeny, ako je znázornené na nasledujúcom obrázku.

Čítajte viac: Špeciálna funkcia VBA Paste na kopírovanie hodnôt a formátov v programe Excel (9 príkladov)

Podobné čítania

  • Kód VBA na porovnanie dvoch hárkov programu Excel a skopírovanie rozdielov
  • Excel VBA: Kopírovanie hodnoty bunky a vloženie do inej bunky
  • Ako skopírovať viacero buniek do iného hárka v programe Excel (9 metód)
  • Excel VBA: Kopírovanie rozsahu do iného zošita
  • [Opravené]: Kopírovanie a vkladanie pravým tlačidlom myši nefunguje v programe Excel (11 riešení)

3. Deklarovanie premennej použitím VBA PasteSpecial a zachovanie formátovania zdroja v programe Excel

Deklarovaním premenných a nastavením premenných na rôzne rozsahy postupujte podľa nasledujúcich krokov a vložteSpecial do VBA .

Krok 1:

  • Najskôr stlačte Alt + F11 otvoriť Makro VBA .
  • Vyberte nový Modul .
  • Potom vložte nasledujúci text Kód VBA .
 Sub Copy_Paste_Special() 'Deklarovanie premenných Dim copy_Rng As Range, Paste_Range As Range 'Príkaz na kopírovanie rozsahu Set copy_Rng = Range("B4:C11") 'Príkaz na vkladanie rozsahu Set Paste_Range = Range("E4") copy_Rng.Copy 'Vložiť príkaz pasteSpecial so zachovaním formátu Paste_Range.PasteSpecial Paste:=xlPasteAllUsingSourceTheme End Sub 

Krok 2:

  • Po uložení programu stlačte tlačidlo F5 spustiť.
  • Preto sa skopírovaný rozsah vloží so zachovaním pôvodného formátovania.

Prečítajte si viac: Ako používať VBA PasteSpecial pre vzorce a formáty v programe Excel (3 spôsoby)

4. Použitie VBA PasteSpecial a zachovanie formátovania zdroja v inom hárku programu Excel

V tejto časti budeme hovoriť o veľmi významnej metóde. Pretože si prejdeme, ako používať PasteSpecial v VBA vo viacerých zošitoch. Napríklad skopírujeme z 'Sheet4' a vložte ho do "List5 ," ako je uvedené v nasledujúcich krokoch.

Krok 1:

  • Otvorenie Makro VBA , stlačte Alt + F11
  • Z Vložte vyberte kartu Modul.
  • Potom vložte nasledujúci text VBA.
 Private Sub KeepSourceFormat() Application.ScreenUpdating = False 'Deklarovať premenné Dim copyRng As Worksheet Dim pasteRng As Worksheet 'Nastaviť cieľ rozsahu na premennú Set copyRng = Worksheets("Sheet4") Set pasteRng = Worksheets("Sheet5") 'nastaviť cieľ vložených buniek 'Pre bunku E4, Rows.count = 5, Offset = 3 Set Destination = pasteRng.Cells(Rows.Count, 5).End(xlUp).Offset(3, 0)'Príkaz na kopírovanie rozsahu copyRng.Range("B4:C11").Copy 'Príkaz na vloženie rozsahu Destination.PasteSpecial Paste:=xlPasteValues Destination.PasteSpecial Paste:=xlPasteFormats Application.CutCopyMode = False Application.ScreenUpdating = True End Sub 

Krok 2:

  • Ak chcete spustiť program, stlačte tlačidlo F5 po uložení programu.
  • Preto sa vložená hodnota dostane do hárok 5 so zachovaním zdrojového formátu.

Prečítajte si viac: Ako používať špeciálny príkaz Vložiť v programe Excel (5 vhodných spôsobov)

Záver

Dúfam, že teraz už viete, ako používať Excel VBA na Vložiť Špeciálne Zachovať formátovanie zdroja. Všetky tieto stratégie by ste sa mali naučiť na svojich dátach a používať ich. Preskúmajte cvičebnicu a použite to, čo ste sa naučili. Motiváciu pokračovať v takýchto prednáškach máme vďaka vašej dôležitej podpore.

V prípade akýchkoľvek otázok nás neváhajte kontaktovať. O svoje názory sa podeľte v komentároch nižšie.

Na vaše otázky vám čo najskôr odpovie Exceldemy zamestnancov.

Zostaňte s nami a pokračujte v učení.

Hugh West je veľmi skúsený tréner a analytik Excelu s viac ako 10-ročnými skúsenosťami v tomto odvetví. Má bakalársky titul v odbore účtovníctvo a financie a magisterský titul v odbore Business Administration. Hugh má vášeň pre vyučovanie a vyvinul jedinečný vyučovací prístup, ktorý sa dá ľahko sledovať a pochopiť. Jeho odborné znalosti Excelu pomohli tisíckam študentov a profesionálov na celom svete zlepšiť svoje zručnosti a vyniknúť vo svojej kariére. Hugh sa prostredníctvom svojho blogu delí o svoje znalosti so svetom a ponúka bezplatné výukové programy Excelu a online školenia, ktoré jednotlivcom a firmám pomôžu naplno využiť ich potenciál.