VBA Infoga rad

Att infoga en rad i VBA skiljer sig något från att infoga en kolumn i VBA, i kolumner använde vi hela kolumnmetoden men för att infoga rader använder vi kalkylmetod med infoga kommandot för att infoga en rad, vi ger också en radreferens där vi vill infoga en annan rad som liknar kolumnerna.

Infoga rad med VBA Excel

Vi kan utföra alla de åtgärder vi gör i överkant med VBA-kodning. Vi kan kopiera, vi kan klistra in, vi kan ta bort, och vi kan göra många fler saker genom VBA-språk. ”Inserting Row” är en av sådana metoder som vi ofta gör i Excel. I den här artikeln visar vi dig hur du utför metoden för infoga rad i VBA.

Hur infogar jag rad i Excel VBA?

Nedan följer de olika metoderna för att använda VBA för att infoga en rad i Excel.

Metod nr 1 - Använda insättningsmetoden

I VBA för att infoga en rad måste vi använda en liknande teknik som vi har använt i Excel-kalkylblad. I VBA måste vi använda intervallobjektet för att infoga raden.

Titta till exempel på koden nedan.

Koda:

 Sub InsertRow_Example1 () Range ("A1"). Insert End Sub 

Den här koden kommer att flytta ner i cellen A1 till B1 och infoga den enda cellen.

Detta kommer att orsaka så många problem när det gäller hantering av data. Detta flyttar bara den nämnda cellen ner och alla andra associerade kolumner förblir desamma.

Metod # 2 - Använda hela radegenskapen

Översta raden vi faktiskt kan använda flera metoder. Metoden nedan infogar hela raden ovanför den valda cellen.

Steg 1: Nämn celladressen först.

Koda:

Sub InsertRow_Example2 () Range ("A1"). Avsluta sub

Steg 2: I stället för att bara använda välj egenskapen " Hel rad ".

Koda:

Sub InsertRow_Example2 () Range ("A1"). EntireRow. Avsluta sub

Steg 3: Använd insättningsmetoden efter åtkomst till hela radegenskapen .

Koda:

 Sub InsertRow_Example2 () Range ("A1"). EntireRow.Insert End Sub 

Detta infogar raden ovanför cellen A1. Eftersom A1 är den första raden kommer den att flytta ner i A1-cellen till B1.

Som du kan i bilden ovan måste den infoga hela raden, inte en enda cell.

Metod # 3 - Använda radnummer

I exemplet ovan har vi just använt encellsadressen och infogat raden. Men vi kan också infoga dem med radnummer.

Antag att du vill infoga en rad under den 5: e raden, först måste vi nämna radnumren med RANGE-objekt.

Koda:

Sub InsertRow_Example3 () Range ("6: 6"). Avsluta sub

Eftersom vi har nämnt hela raden som 6: 6 måste vi använda hela radegenskapen här, vi kan direkt använda metoden “INSERT”.

Koda:

 Sub InsertRow_Example3 () Range ("6: 6"). Insert End Sub 

Detta infogar också hela raden, inte den enskilda cellen.

Om du vill infoga två rader under 5: e raden måste vi först välja 2 rader och sedan använda INSERT-metoden.

 Sub InsertRow_Example3 () Range ("6: 7"). Insert End Sub 

Detta infogar två rader under 5: e raden.

Så här kan vi infoga så många rader som möjligt i kalkylbladet.

Metod # 4 - Användning av aktiv cellegenskap

Vi kan använda Active Cell VBA-egenskap för att infoga rader. Den aktiva cellen är inget annat än en för närvarande vald cell.

Antag att du befinner dig i cellen B5 och att du vill infoga en rad ovan kan du använda aktiv cellegenskap.

 Sub InsertRow_Example4 () ActiveCell.EntireRow.Insert End Sub 

Detta infogar raden ovanför den aktiva cellen.

Metod # 5 - Använda aktiv cellegenskap med offsetfunktion

Antag att du vill infoga en rad efter två rader i den aktiva cellen, vi måste använda Offset-funktionen för att kompensera antalet rader.

Antag att du befinner dig i B5-cellen.

Om du vill infoga raden efter den andra raden från den aktiva cellen kan vi använda koden nedan.

Koda:

 Sub InsertRow_Example5 () ActiveCell.Offset (2, 0) .EntireRow.Insert End Sub 

Detta infogar raden efter den sjätte raden.

Infoga alternativa rader

Att infoga alternativa rader är ofta jag har stött på många gånger. För en titt på nedanstående databild.

Nu måste vi infoga alternativa rader. Vi måste använda öglor för att infoga varje alternativ rad.

Koda:

 Sub InsertRow_Example6 () Dim K som heltal Dim X Som heltal X = 1 För K = 1 till 4 celler (X, 1). EntireRow. Infoga X = X + 2 Nästa K End Sub 

Detta infogar rader så här.

Du kan ladda ner detta VBA Insert Row Excel här. VBA Infoga rad Excel-mall