VBA Infoga rad eller kolumn

Denna handledning visar hur du använder VBA för att infoga rader och kolumner i Excel.

För att infoga rader eller kolumner använder vi Infoga metod.

Infoga en enda rad eller kolumn

Infoga ny rad

För att infoga en enda rad kan du använda raderobjektet:

1 Rader (4) .Inför

Eller så kan du använda intervallobjektet tillsammans med EntireRow:

1 Område ("b4"). EntireRow.Insert

Infoga ny kolumn

I likhet med att infoga rader kan vi använda kolumnobjektet för att infoga en kolumn:

1 Kolumner (4) .Inför

Eller intervallobjektet, tillsammans med EntireColumn:

1 Område ("b4"). EntireColumn.Insert

Infoga flera rader eller kolumner

Infoga flera rader

När du sätter in flera rader med raderobjektet måste du ange raderna i citattecken:

1 Rader ("4: 6"). Infoga

Att infoga flera rader med intervallobjektet fungerar på samma sätt som med en enda rad:

1 Område ("b4: b6"). EntireRow.Insert

Infoga flera kolumner

När du sätter in flera kolumner med kolumnobjektet anger du kolumnen brev i citat:

1 Kolumner ("B: D"). Infoga

Att infoga flera kolumner med intervallobjektet fungerar på samma sätt som med en enda kolumn:

1 Område ("b4: d4"). EntireColumn.Insert

Infoga - Shift & CopyOrigin

De Infoga metod har två valfria argument:

  • Flytta - Vilken riktning för att flytta cellerna
  • CopyOrigin - Vilken cellformatering som ska kopieras (ovan, under, vänster eller höger)

Skift -argumentet är irrelevant när du sätter in hela rader eller kolumner. Det låter dig bara indikera att växla nedåt eller flytta åt höger:

  • xlShiftDown - Flytta ner cellerna
  • xlShiftToRight - Flytta celler åt höger

Som du kan se kan du inte växla uppåt eller åt höger.

De CopyOrigin argument har två potentiella ingångar:

  • xlFormatFromLeftorAbove - (0) Nyinsatta celler tar formatering från celler ovanför eller till vänster
  • xlFormatFromRightorBelow (1) Nyligen infogade celler tar formatering från celler under eller till höger.

Låt oss titta på några exempel på CopyOrigin argument. Här är våra första uppgifter:

I det här exemplet infogas en rad med formatering från raden ovan.

1 Rader (5) .Insert, xlFormatFromLeftOrAbove

I det här exemplet infogas en rad med formatering från raden nedan.

1 Rader (5) .Insert, xlFormatFromRightOrBelow

Andra infoga exempel

Infoga kopierade rader eller kolumner

Om du vill infoga en kopierad rad använder du koden så här:

12 Område ("1: 1"). KopieraOmråde ("5: 5"). Infoga

Här kopierar vi rad 1 och sätter in den på rad 5.

Infoga rader baserat på cellvärde

Detta kommer att gå igenom ett intervall och infoga rader baserat på cellvärden:

1234567891011 Sub InsertRowswithSpecificValue ()Dim cell As RangeFör varje cell i intervallet ("b2: b20")Om cell.Value = "insert" Dåcell.EntireRow.InsertAvsluta omNästa cellAvsluta Sub

Ta bort rader eller kolumner

För att radera rader eller kolumner, använd helt enkelt Radera metod.

1234567 Rad (1). RaderaOmråde ("a1"). EntireRow.DeleteKolumner (1). RaderaOmråde ("a1"). EntireColumn.Delete

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave