Vba: jak wstawić linię z formatowaniem


Możesz użyć następującej składni w VBA, aby wstawić linię o tym samym formacie, co linia powyżej:

 Sub insertRowWithFormatting()

ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats

Application.CutCopyMode = False

End Sub

To konkretne makro wstawi wiersz pod aktualnie wybraną komórką z dokładnie takim samym formatowaniem jak komórki w aktualnie wybranym wierszu.

Uwaga : Linia Application.CutCopyMode = False określa, że tryb wycinania i kopiowania powinien być wyłączony po wykonaniu makra.

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Powiązane: Jak wstawić wiele wierszy za pomocą języka VBA

Przykład: Wstaw linię z formatowaniem w VBA

Załóżmy, że mamy w programie Excel następujący zbiór danych zawierający informacje o różnych koszykarzach:

Załóżmy, że chcemy wstawić wiersz poniżej wiersza 2 z dokładnie takim samym formatowaniem.

W tym celu możemy utworzyć następujące makro:

 Sub insertRowWithFormatting()

ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats

Application.CutCopyMode = False

End Sub

Możemy następnie wybrać komórkę A2 i uruchomić to makro.

Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:

Zauważ, że wstawiony nowy wiersz ma dokładnie taki sam format jak komórki w wierszu 2, łącznie z kolorami komórek i obramowaniem.

Należy również pamiętać, że wszystkie pozostałe wiersze w istniejącym zbiorze danych zostały po prostu przesunięte w dół.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:

VBA: Jak znaleźć ostatnio używaną linię
VBA: Jak policzyć liczbę wierszy w zakresie
VBA: Jak policzyć liczbę użytych kolumn

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *