Excel VBA Infoga kolumn

I excel om vi vill infoga en kolumn så finns det flera sätt att göra det. Vi kan klicka höger och välja Infoga kolumn från rullgardinsmenyn eller använda Ctrl + Shift + Plus (+) -tangent tillsammans. Men vad händer om vi automatiserar denna process också genom att skapa ett makro genom VBA? Detta är ganska bra när vi arbetar med att skapa ett makro med enorm kodningsstruktur eller lägga till en kolumn eller flera kolumner som också är en uppgift att utföra. VBA har en helt kolumn och Infoga-funktionen används för att infoga en ny kolumn.

Hur sätter man in kolumn i Excel VBA?

Vi kommer att lära dig att infoga en kolumn i Excel med hjälp av VBA-kod med några exempel.

Du kan ladda ner denna VBA Infoga kolumn Excel-mall här - VBA Infoga kolumn Excel-mall

Exempel 1 - VBA-infogningskolumn

Vi har en tabell med 2 kolumner och 11 rader som visas nedan. Nu kommer vi att automatisera processen att infoga kolumner på olika sätt.

För detta följer du stegen nedan:

Steg 1: Sätt först in en ny modul i VBA från menyalternativet Infoga som visas nedan.

Steg 2: Starta nu en underkategori i namnet på utförd funktion som VBA Insert Column eller i något annat namn som visas nedan.

Koda:

 Sub VBAColumn1 () Slut Sub 

Steg 3: Välj först cellintervallet eller kompletta kolumner där vi vill infoga en kolumn följt av infoga kommandot som visas nedan. Kommandot Infoga gör det möjligt att infoga en rad eller kolumn eller en cell i vald områdeskolumn eller cell.

Koda:

 Sub VBAColumn1 () Range ("B: B"). Infoga End Sub 

Steg 4: Välj nu cellområdet som referens där vi vill infoga en kolumn som visas nedan.

Koda:

 Sub VBAColumn1 () Range ("B: B"). Insert Range ("B4") End Sub 

Steg 5 : Som diskuterats i förklaringen kommer vi att använda hela kolumnen med funktionen Infoga som visas nedan. Detta gör att kolumnen kan infogas.

Koda:

 Sub VBAColumn1 () Range ("B: B"). Insert Range ("B4"). HeleColumn.Insert End Sub 

Steg 6: Kompilera nu koden genom att trycka på funktionsknappen F8 och klicka sedan på knappen Spela för att köra den fullständiga koden som finns under menyfältet som visas nedan. Vi kommer att märka mellan kolumn 1 och kolumn2, två nya tomma kolumner infogas som visas nedan.

Exempel 2 - VBA-infogningskolumn

Det finns en annan metod för att infoga en kolumn. Denna metod innehåller en kombination av olika kommandon.

Steg 1: Sätt i en ny modul från Infoga-menyn.

Steg 2: Och skriv en underkategori i namnet på den utförda funktionen som visas nedan eller i något annat namn.

Koda:

 Sub VBAColumn2 () Slut Sub 

Steg 3: Med hjälp av dimensionsvariabeln DIM med valfritt alfabet eller namn, definiera det som Range låt 'säga kolumn som visas nedan.

Koda:

 Sub VBAColumn2 () Dim Column As Range End Sub 

Steg 4: Nu följer du intervallet, använd en Set-funktion med definierad dimension Kolumn som visas nedan, följt av lika tecken (“=”).

Koda:

 Sub VBAColumn2 () Dim Column As Range: Set Column = End Sub 

Steg 5: Använd nu applikationsfunktion som är inbyggd VBA med definierat intervall för komplett kolumn B.

Koda:

 Sub VBAColumn2 () Dim Column As Range: Set Column = Application.Range ("B: B") Slut Sub 

Steg 6: Använd nu kolumnvariabeln med Infoga-funktionen som visas nedan.

Koda:

 Sub VBAColumn2 () Dim Column As Range: Set Column = Application.Range ("B: B") Column.Insert End Sub 

Steg 7: Vi kan växla för att infoga en kolumn till höger eller vänster riktning med hjälp av Shift-kommandot. Normalt infogas kolumn i höger riktning alltid från den valda referenscellen eller kolumnen.

Koda:

 Sub VBAColumn2 () Dim Column As Range: Set Column = Application.Range ("B: B") Column.Insert Shift: = xlShiftToRight, End Sub 

Steg 8: Välj äntligen ursprungsreferensformat från höger eller nedan som är för kolumn eller rad beroende på typen av infogning.

Koda:

 Sub VBAColumn2 () Dim Column As Range: Set Column = Application.Range ("B: B") Column.Insert Shift: = xlShiftToRight, CopyOrigin: = xlFormatFromRightOrBelow End Sub 

Steg 9: Nu är den klar. Vi kan sammanställa koden och köra den. Vi kommer att se en ny kolumn mellan Colum1 och Column2 kommer att läggas till som visas nedan.

Exempel 3 - VBA-infogningskolumn

Detta exempel är ett annat enklaste sätt att infoga en kolumn i VBA.

Steg 1: Sätt i en ny modul

Steg 2: Lägg till en underkategori i namnet på VBA Insert Column som visas nedan.

Koda:

 Sub VBAColumn3 () Slut Sub 

Steg 3: Välj först kolumnen eller cellreferensen där vi vill lägga till en kolumn med hjälp av Välj som visas nedan.

Koda:

 Sub VBAColumn3 () Kolumner ("B: B"). Välj Avsluta sub 

Steg 4: I den andra raden använder du kommandot Selection tillsammans med Insert-funktionen som visas nedan.

Koda:

 Sub VBAColumn3 () Kolumner ("B: B"). Välj urval.Inför slutet Sub 

Steg 5: Välj äntligen positionen där vi vill flytta den infogade nya kolumnen, antingen höger eller vänster med hjälp av Shift-funktionen. Valet av att placera en ny kolumn är helt och hållet individens krav.

Koda:

 Sub VBAColumn3 () Kolumner ("B: B"). Välj urval.Insert Shift: = xlToRight End Sub 

Steg 6: Detta kompletterar vår kod. Nu kan vi sammanställa koden för att hitta om det finns något fel. Om det inte finns något fel, kör koden. Vi ser att en ny kolumn kommer att läggas till mellan kolumn1 och kolumn2 som visas nedan.

Exempel 4 - VBA-infogningskolumn

I det här exemplet lär vi oss att lägga till nya kolumner efter varje redan stående kolumn.

Steg 1: Sätt nu in en modul från infoga-menyn.

Steg 2: Lägg sedan till underkategori i namnet på VBA Insert Column med en sekvenssekvens.

Koda:

 Sub VBAColumn4 () Slut Sub 

Steg 3: Använd nu DIM för att definiera en variabel i vilket namn som helst. Vi har använt kolumn som heltal (om siffror används)

Koda:

 Sub VBAColumn4 () Dim Column As Integer End Sub 

Steg 4: Till en kolumn efter varje stående fylld kolumn kommer vi att välja och använda kolumn (2) för att lägga till en ny kolumn som visas nedan.

Koda:

 Sub VBAColumn4 () Dim Column Som heltalskolumner (2). Välj End Sub 

Steg 5: Öppna en For-Next-slinga, där vi skriver villkoren för att infoga en kolumn efter varandra som visas.

Koda:

 Sub VBAColumn4 () Dim Column Som heltalskolumner (2). Välj för nästa slut Sub 

Steg 6: Eftersom vi bara har två kolumner i våra exempeldata, så vi kunde bara lägga till en ny kolumn av dessa kolumner. Så vi använder 0 till 2 intervall av sekvens kolumner.

Koda:

 Sub VBAColumn4 () Dim Column Som heltalskolumner (2) .Välj för kolumn = 0 till 2 Next End Sub 

Steg 7: Använd ActiveCell-funktionen med hjälp av ActiveCell-funktionen för att infoga som visas nedan.

Koda:

 Sub VBAColumn4 () Dim Kolumn som heltalskolumner (2) .Välj för kolumn = 0 till 2 ActiveCell.EntireColumn.Insert Next Next Sub 

Steg 8: Med hjälp av ActiveCell-funktionen använder du Offset för att placera den nyligen tillagda kolumnen. Vi använder 0 och 2: e position.

Koda:

 Sub VBAColumn4 () Dim Kolumn som heltalskolumner (2) .Välj för kolumn = 0 till 2 ActiveCell.EntireColumn.Insert ActiveCell.Offset (0, 2) .Välj Next End Sub 

Steg 9: Sätt nu ihop koden och kör den om inget fel hittades. Vi kommer att se, efter kolumn1 och kolumn2, nya kolumner läggs till.

Fördelar med Excel VBA Insert Column

  • Det är användbart när du snabbt lägger till en ny kolumn i alla celler.
  • Det är lätt att implementera även om strukturen i koden är enorm.
  • Om vi ​​arbetar med en enorm kod, blir en ny kolumn ett behov av att fylla i koden, genom att använda ovanstående exempel kommer det att göra uppgiften lätt.

Saker att komma ihåg

  • Om du använder exempel-4, kom ihåg att välja kolumnintervall tills tabellen är tillämplig.
  • Att spara filen i makroaktivera excel, sparar koden.
  • Infoga endast tillämpliga och obligatoriska kolumner för att undvika onödiga kolumner för att läggas till.

Rekommenderade artiklar

Detta är en guide till VBA Insert Column. Här diskuterar vi hur man sätter in kolumn i Excel med VBA-kod tillsammans med praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. VBA VLOOKUP-funktion
  2. DCOUNT-funktion i Excel
  3. VBA Copy Paste
  4. COMBIN-funktion i Excel

Kategori: