Vložit sloupce VBA | Jak vložit sloupec do listu aplikace Excel pomocí VBA?
Normálně v listu aplikace Excel máme dvě různé metody pro přidání nebo vložení sloupců, z nichž jedna je klávesová zkratka a druhá pomocí metody klepnutí pravým tlačítkem a vložení, ale ve VBA musíme použít příkaz insert a celý příkaz sloupce k přidání libovolného sloupce dohromady, Trik je v tom, že pokud potřebujeme vložit jeden sloupec, dáme odkaz na jeden sloupec, ale pro více sloupců dáme více odkazů na sloupec.
Vložení sloupců do aplikace Excel pomocí VBA
Jako součást kódu VBA možná budeme muset vložit několik sloupců do našeho datového listu, aby vyhovovaly našim potřebám. Vložení sloupce je snadná klávesová zkratka v listu stisknutím Ctrl +, ale co takhle vložit nový sloupec pomocí kódu VBA. V tomto článku s názvem „VBA Vložit sloupec“ vám ukážeme postup přidávání sloupců v aplikaci Excel a ukážeme vám příklady různých scénářů.
Jak vložit sloupce do listu aplikace Excel pomocí VBA?
Sloupce můžeme vložit do VBA pomocí vlastnosti COLUMNS a objektu RANGE. Musíte vložit sloupce a objekty rozsahu, abychom mohli vložit nový sloupec.
Chcete-li vložit nový sloupec, musíme určit, za který sloupec musíme vložit, aniž bychom řekli, za který sloupec musíme vložit, jak může VBA porozumět logice.
Například pokud chcete vložit sloupec za sloupec B, můžete tento kód vytvořit takto.
Sloupce („C“)
Poznámka: Důvod, proč jsem použil C k vložení sloupce poté, protože vybraná buňka bude posunuta na pravou stranu.
Po zadání sloupců potřebujeme přístup k vlastnosti „Celý sloupec“.
Sloupce („C“). EntireColumn
Poté musíme zvolit metodu „Vložit“.
Sloupce („C“). EntireColumn.Insert
Tím se vloží sloupec za sloupec C a stávající sloupec C se přesune do D.
Příklad č. 1 - Vložení sloupců pomocí rozsahu objektu ve VBA
Nyní se podívejte na způsob vložení sloupce pomocí objektu RANGE. Z tohoto důvodu zvažte níže uvedená data jako příklad.
Teď chci, aby VBA vložil sloupec za sloupec A, podle následujících kroků vytvořte kód.
Krok 1: Spusťte dílčí postup.
Krok 2: Otevřete objekt Range .
Kód:
Sub ColumnInsert_Example1 () Range (End Sub
Krok 3: Nyní uveďte sloupec v uvozovkách .
Kód:
Sub ColumnInsert_Example1 () Range ("B: B") End Sub
Krok 4: Nyní vyberte vlastnost Celý sloupec .
Kód:
Sub ColumnInsert_Example1 () Range ("B: B"). Ent End Sub
Krok 5: Po výběru vlastnosti Celý sloupec zvolte metodu „Vložit“ .
Kód:
Sub ColumnInsert_Example1 () Range ("B: B"). EntireColumn.ins End Sub
Váš kód nyní vypadá takto.
Kód:
Sub ColumnInsert_Example1 () Range ("B: B"). EntireColumn.Insert End Sub
Spusťte kód, který vloží nový sloupec B.
Příklad č. 2 - Vložení více sloupců
Například pokud chcete vložit dva nové sloupce za sloupec A, musíme zmínit dvě adresy sloupců.
Kód:
Sub ColumnInsert_Example1 () Range ("B: C"). EntireColumn.Insert End Sub
Výše uvedený kód vloží dva sloupce za sloupec A.
Příklad č. 3 - Pouze u metody „Vložit“
Můžeme vložit nový sloupec pomocí metody „Vložit“ jako jediné bez přístupu k vlastnosti Celý sloupec. K tomu pochopíme syntaxi metody „insert“.
Expression.Insert ([Shift], [Copy Origin])
[Shift]: Když vložíme nový sloupec, ať už potřebujeme, aby se sloupce posunuly na pravou stranu, nebo aby se v případě řádků posunuly dolů. Zde můžeme použít dvě možnosti „xlToRight“ a „xlDownTo“
[Kopírovat původ]: Tím se určí formát nově vloženého sloupce. Ať už potřebujete formát z levé strany sloupce nebo z výše uvedených buněk. Zde můžeme použít dvě možnosti „xlFormatFromLeftOrAbove“ a „xlFormatFromRightOrBelow“.
Níže je uveden ukázkový kód.
Sub ColumnInsert_Example1 () Range ("B: B"). Insert Shift: = xlToRight, Copyorigin: = xlFormatFromLeftOrAbove End Sub
Příklad č. 4 - Vložení sloupců pomocí vlastnosti COLUMNS ve VBA
Viděli jsme, jak VBA vkládat sloupce pomocí objektu RANGE, nyní si ukážeme, že můžeme vložit sloupce pomocí vlastnosti „COLUMNS“.
Otevřete vlastnost COLUMNS.
Kód:
Sub ColumnInsert_Example2 () Columns (End Sub
Zde můžeme zadat sloupec dvěma způsoby. Jeden používá jako obvykle abecední odkazy a druhý používá čísla sloupců.
Pokud chcete vložit sloupec za sloupec A, bude mít kód Sloupce („B“). Pokud používáte číselnou referenci, bude kódem SLOUPCE (2).
Kód:
Sub ColumnInsert_Example2 () Columns ("B"). End Sub
Teď nastává problém, protože když použijeme vlastnost COLUMNS, nedostaneme se do seznamu IntelliSense.
Kód:
Sub ColumnInsert_Example2 () Columns ("B"). Entir End Sub
Zde si musíme být jisti, co děláme. To je důvod, proč jsem vám jako první ukázal objekt RANGE.
Kód:
Sub ColumnInsert_Example2 () Columns ("B: B"). EntireColumn.Insert End Sub
Příklad č. 5 - Vložení alternativních sloupců
Předpokládejme, že máte data jako na následujícím obrázku.
Pokud chcete po každém alternativním řádku vložit nové sloupce, musíme použít smyčky VBA. Níže jej zakódujte na míru.
Kód:
Sub ColumnInsert_Example3 () Dim k As Integer Columns (2). Select For k = 2 To 8 ActiveCell.EntireColumn.Insert ActiveCell.Offset (0, 2). Select Next k End Sub
Tím se vloží sloupec takto.
Příklad č. 6 - Vložení sloupce na základě hodnoty buňky
Můžeme také vložit sloupec na základě hodnoty buňky. Podívejte se například na níže uvedená data.
Tady chci vložit sloupec, pokud je hodnota buňky prvního řádku „Year“ a moje data by se měla po vložení nových sloupců líbit.
K provedení tohoto úkolu použijte níže uvedený kód.
Kód:
Sub ColumnInsert_Example4 () Dim k As Integer Dim x As Integer x = 2 For k = 2 To 12 If Cells (1, x) .Value = "Year" Then Cells (1, x) .EntireColumn.Insert x = x + 1 Konec Pokud x = x + 1 Další k Konec Sub
Tento VBA Vložit sloupce Excel si můžete stáhnout zde. VBA Vložit sloupce Excel Šablona