Denne opplæringen vil demonstrere hvordan du bruker VBA til å sette inn rader og kolonner i Excel.
For å sette inn rader eller kolonner bruker vi Sett inn metode.
Sett inn en enkelt rad eller kolonne
Sett inn ny rad
For å sette inn en enkelt rad, kan du bruke radobjektet:
1 | Rader (4) .Sett inn |
Eller du kan bruke Range Object sammen med EntireRow:
1 | Område ("b4"). EntireRow.Insert |
Sett inn ny kolonne
I likhet med å sette inn rader, kan vi bruke kolonneobjektet til å sette inn en kolonne:
1 | Kolonner (4) .Sett inn |
Eller Range Object, sammen med EntireColumn:
1 | Område ("b4"). EntireColumn.Insert |
Sett inn flere rader eller kolonner
Sett inn flere rader
Når du setter inn flere rader med radobjektet, må du skrive inn radene i anførselstegn:
1 | Rader ("4: 6"). Sett inn |
Å sette inn flere rader med Range Object fungerer på samme måte som med en enkelt rad:
1 | Område ("b4: b6"). EntireRow.Insert |
Sett inn flere kolonner
Når du setter inn flere kolonner med kolonneobjektet, angir du kolonnen bokstaver i sitater:
1 | Kolonner ("B: D"). Sett inn |
Å sette inn flere kolonner med Range Object fungerer på samme måte som med en enkelt kolonne:
1 | Område ("b4: d4"). EntireColumn.Insert |
Sett inn - Shift & CopyOrigin
De Sett inn metode har to valgfrie argumenter:
- Skifte - Hvilken retning cellene skal forskyves
- CopyOrigin - Hvilken celleformatering som skal kopieres (over, under, venstre eller høyre)
Shift -argumentet er irrelevant når du setter inn hele rader eller kolonner. Det lar deg bare indikere å skifte ned eller skifte til høyre:
- xlShiftDown - Skift cellene ned
- xlShiftToRight - Flytt cellene til høyre
Som du kan se, kan du ikke skifte opp eller til høyre.
De CopyOrigin argumentet har to potensielle innganger:
- xlFormatFromLeftorAbove - (0) Nyinnsatte celler tar formatering fra celler over eller til venstre
- xlFormatFromRightorBelow (1) Nyinnsatte celler tar formatering fra celler under eller til høyre.
La oss se på noen eksempler på CopyOrigin argument. Her er våre første data:
Dette eksemplet vil sette inn en rad og ta formateringen fra raden ovenfor.
1 | Rader (5) .Insert, xlFormatFromLeftOrAbove |
Dette eksemplet vil sette inn en rad og ta formateringen fra raden nedenfor.
1 | Rader (5) .Insert, xlFormatFromRightOrBelow |
Andre eksempler på innlegg
Sett inn kopierte rader eller kolonner
Hvis du vil sette inn en kopiert rad, bruker du koden som denne:
12 | Område ("1: 1"). KopierOmråde ("5: 5"). Sett inn |
Her kopierer vi rad 1 og setter den inn på rad 5.
Sett inn rader basert på celleverdi
Dette vil gå gjennom et område og sette inn rader basert på celleverdier:
1234567891011 | Sub InsertRowswithSpecificValue ()Dim cell As RangeFor hver celle i området ("b2: b20")Hvis cell.Value = "insert" Dacell.EntireRow.InsertSlutt omNeste celleSlutt Sub |
Slett rader eller kolonner
Hvis du vil slette rader eller kolonner, bruker du bare Slett metode.
1234567 | Rader (1). SlettOmråde ("a1"). EntireRow.DeleteKolonner (1). SlettOmråde ("a1"). EntireColumn.Delete |