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