VBA Vložit jinak | Nejlepší 5 způsobů použití speciální funkce VBA PasteSpecial?
Podobně jako v listu, když kopírujeme data a vkládáme je do jiného rozsahu buněk, máme speciální metodu pro vložení, která nám umožňuje vložit data sama o sobě nebo pouze vzorce nebo pouze hodnoty a stejným způsobem můžeme použít Vložit jinak ve VBA pomocí metoda vlastnosti range takto rozsah. paste special () poskytující požadovaný typ v závorkách.
Vložte speciální do VBA
Paste Special in Excel slouží v naší každodenní práci mnoha způsoby. Pomocí speciální pasty dokážeme mnohem více věcí než obvykle. Zkopírujte a vložte je všude ve světě počítačů. Ale past speciální je pokročilá věc v aplikaci Excel.
Stejně jako běžné vložení aplikace Excel do VBA máme i speciální metodu pro vložení zkopírovaných dat. Kopírování věcí v aplikaci Excel není pro uživatele aplikace Excel neobvyklá věc, kopírují, vkládají a většinu času používají speciální vkládání, které slouží mnoha účelům.
V běžném programu Excel Vložit obsahuje mnoho možností, jako je vložit pouze hodnoty, vložit vzorce, vložit formáty atd ...
Paste special have to Paste, Operation, Skip Blanks, and Transpose like this in VBA too we have all the parameters with Paste Special method.
The Formula of Paste Special in VBA
Níže je uveden vzorec pro vložení speciálu ve VBA
Paste Special je k dispozici s objektem VBA Range, protože po zkopírování dat je vložíme do oblasti buněk, takže je k dispozici speciální metoda pro vložení s objektem range .
Vložit typ: Po zkopírování dat, jak chcete vložit. Ať už chcete vložit hodnoty, vzorce, formáty, ověření atd. Níže je uveden úplný seznam možností dostupných v části Vložit typ.
Vložit speciální operaci: Při vkládání chcete provádět jakýkoli druh operací, jako je sčítání, odčítání, dělení, násobení nebo žádná.
- [Přeskočit mezery ]: Pokud chcete mezery přeskočit, můžete zvolit PRAVDA nebo NEPRAVDA.
- [Transpose]: Pokud chcete data transponovat, můžete zvolit PRAVDA nebo NEPRAVDA.
Příklady vložení speciálu v aplikaci Excel VBA
Následuje příklad vložení speciálního ve VBA.
Tuto šablonu VBA Paste Special Template si můžete stáhnout zde - VBA Paste Special TemplatePříklad č. 1 - Vkládání pouze hodnot pomocí funkce VBA PasteSpecial
V prvním příkladu provedeme vkládání pouze hodnot pomocí paste special. Předpokládejme, že níže jsou data, která máte v názvu listu s názvem Data prodeje.
Nyní provedeme úlohu kopírování a vložení pomocí několika speciálních metod vložení. Postupujte podle následujících kroků.
Krok 1: Nejprve vytvořte název makra.
Krok 2: Nejprve zkopírujte rozsah A1 až D14 z názvu listu „Data prodeje“. Chcete-li kopírovat rozsah, použijte níže uvedený kód.
Kód:
Rozsah („A1: D14“). Kopírovat
Krok 3: Po zkopírování dat vložíme hodnoty z G1 do J14. Nejprve odkazujte na rozsah.
Kód:
Rozsah („G1: J14“)
Krok 4: Po výběru rozsahu musíme vložit. Takže vložte tečku (.) A vyberte Vložit speciální metodu.
Kód:
Sub PasteSpecial_Example1 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial End Sub
Krok 5: Z rozevíracího seznamu vyberte možnost „xlPasteValues“.
Kód:
Sub PasteSpecial_Example1 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteValues End Sub
Krok 6: Nyní spusťte tento kód pomocí klávesy F5 nebo ručně a uvidíte, co se stane.
Náš kód tedy zkopíroval data z A1 do D14 a vložil z G1 do J14 jako hodnoty.
Bylo provedeno za úkol klávesové zkratky Excel v listu ALT + E + S + V .
Příklad č. 2 - Vložit vše pomocí VBA PasteSpecial
Nyní uvidíme, co se stane, pokud provedeme úkol xlPasteAll.
Kód:
Sub PasteSpecial_Example2 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteAll End Sub
Nyní, pokud tento kód spustíte ručně pomocí možnosti spuštění nebo stisknutím klávesy F5, budeme mít data taková, jaká jsou.
Příklad č. 3 - Vkládání formátů pomocí funkce VBA PasteSpecial
Nyní uvidíme, jak vložit pouze formáty. Níže uvedený kód by udělal práci za nás.
Kód:
Sub PasteSpecial_Example3 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteFormats End Sub
Pokud spustíte tento kód pomocí klávesy F5 nebo ručně, získáme jediný formát kopírovaného rozsahu nic jiného.
Příklad č. 4 - Vložit šířku sloupce pomocí VBA Vložit jinak
Nyní uvidíme, jak vložit pouze šířku sloupce z kopírovaného rozsahu. Z tohoto důvodu jsem zvýšil šířku sloupce pro jeden ze svých datových sloupců.
Použít pod kódem vloží pouze šířku sloupce zkopírovaného rozsahu.
Kód:
Sub PasteSpecial_Example3 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteColumnWidths End Sub
Spusťte tento kód a podívejte se na rozdíl v šířce sloupce.
Nyní vidíme, že šířka prodejního sloupce byla zvětšena na šířku sloupce našeho zkopírovaného rozsahu sloupce.
Příklad č. 5 - Zkopírujte data z jednoho listu do druhého pomocí speciální možnosti VBA Vložit
Viděli jsme, jak kopírovat a vložit data na stejný list. Nyní budeme, jak vložit z jednoho listu na jiný list.
Krok 1: Než vybereme rozsah, musíme zjistit, ze kterého listu musíme vybrat data.
Kód:
Sub PasteSpecial_Example5 () Worksheets ("Sales Data") End Sub
Krok 2: Po výběru listu podle jeho názvu musíme vybrat rozsah v tomto listu. Zkopírujte to.
Kód:
Sub PasteSpecial_Example5 () Worksheets ("Sales Data"). Range ("A1: D14"). Copy End Sub
Výše uvedený kód říká, že v názvu listu „Data prodeje“ zkopírujte rozsah („A1: D14“)
Krok 3: Protože jej vkládáme do jiného listu, musíme vybrat list podle jeho názvu.
Kód:
Sub PasteSpecial_Example5 () Worksheets ("Sales Data"). Range ("A1: D14"). Copy Worksheets ("Month Sheet") End Sub
Krok 4: Nyní v seznamu „Měsíční list“ vyberte rozsah.
Kód:
Sub PasteSpecial_Example5 () Worksheets ("Sales Data"). Range ("A1: D14"). Copy Worksheets ("Month Sheet"). Range ("A1: D14") End Sub
Krok 5: Pomocí Vložit jinak budeme vkládat hodnoty a formát.
Kód:
Sub PasteSpecial_Example5 () Worksheets ("Sales Data"). Range ("A1: D14"). Copy Worksheets ("Month Sheet"). Range ("A1: D14"). PasteSpecial xlPasteValuesAndNumberFormats End Sub
Krok 6: Vkládáme nejen hodnoty a formát pomocí VBA Paste Special, ale také je vkládáme jako TRANSPOSE.
Kód:
Sub PasteSpecial_Example5 () Worksheets ("Sales Data"). Range ("A1: D14"). Copy Worksheets ("Month Sheet"). Range ("A1: D14"). PasteSpecial xlPasteValuesAndNumberFormats, Transpose: = True End Sub
Nyní spusťte tento kód, zkopíruje a převede data do „Měsíčního listu“.
Důležité informace o aplikaci Excel VBA Paste Speciální funkce
- Pokud chcete přeskočit mezery, musíte ve výchozím nastavení zadat argument jako PRAVDA, trvá FALSE.
- Pokud chcete data transponovat, musíme vybrat transpozici jako PRAVDA.
- Můžeme provést pouze jednu speciální pastu najednou.