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 „Vložit sloupec VBA“ 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 udělat důvod, proč potřebujeme sloupce a objekty rozsahu k vložení nového sloupce.

Chcete-li vložit nový sloupec, musíme identifikovat, za který sloupec musíme vložit, aniž bychom řekli, za který sloupec musíme vložit, jak VBA může pochopit logiku.

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, protože vybraná buňka bude posunuta na pravou stranu.

Po zadání sloupců musíme získat 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. Uvažujme například níže uvedená data.

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. 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ž se sloupce potřebují posunout na pravou stranu nebo v případě řádků posunout dolů. Zde můžeme použít dvě možnosti, „xlToRight“ a „xlDownTo“

(Copy Origin): This will specify the format for the newly inserted column. Whether you need the format from the left side of the column or from the above cells. Here we can use two options “xlFormatFromLeftOrAbove” and “xlFormatFromRightOrBelow”.

Below is the example code for you.

Sub ColumnInsert_Example1() Range("B:B").Insert Shift:=xlToRight, Copyorigin:=xlFormatFromLeftOrAbove End Sub

Example #4 - Insert Columns Using COLUMNS Property in VBA

We have seen how to VBA insert columns using the RANGE object; now, we will show we can insert columns using the “COLUMNS” property.

Open the COLUMNS property.

Code:

Sub ColumnInsert_Example2() Columns( End Sub

We can specify the column in two ways here. One is using as usual alphabetic references, and another one is using column numbers.

If you want to insert the column after column A, then the code will be COLUMNS(“B”). If you are using numerical reference, then the code will be COLUMNS(2).

Code:

Sub ColumnInsert_Example2() Columns("B"). End Sub

Now the problem for you arises because when we use COLUMNS property, we don’t get to access the IntelliSense list.

Code:

Sub ColumnInsert_Example2() Columns("B").Entir End Sub

Here we need to sure of what we are doing. So this is the reason I have showed you the RANGE object first.

Code:

Sub ColumnInsert_Example2() Columns("B:B").EntireColumn.Insert End Sub

Example #5 - Insert Alternative Columns

Assume you have the data like the below image.

If you want to insert new columns after every alternate row, then we need to use VBA loops. The below code it tailor-made the code for you.

Code:

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

Zajímavé články...