W tym samouczku przyjrzymy się różnym sposobom łączenia komórek za pomocą VBA.
Scal komórki za pomocą VBA
Możesz scalać komórki w VBA przy użyciu metody Range.Merge. Poniższy kod połączy komórki A1:C1:
12345 | Subscalanie komórek()Zakres("A1:C1").ScalNapis końcowy |
Wynik to:
Rozłącz komórki za pomocą VBA
Scalony zakres komórek można cofnąć za pomocą metody Range.UnMerge. Załóżmy, że scaliłeś zakres komórek A1:D1. Aby rozdzielić komórki, możesz użyć jednego z odwołań do komórek w zakresie. Poniższy kod pokazuje, jak rozdzielić komórki A1:D1, w tym przypadku używamy komórki B1:
12345 | Sub unmergecells()Zakres("B1").UnMergeNapis końcowy |
Więcej przykładów łączenia
Scal wiersze za pomocą VBA
Możesz scalić wiersze za pomocą VBA, określając numery wierszy, które chcesz scalić. Mamy tekst w komórce A1 pokazany poniżej:
Poniższy kod połączy wiersze 1-4:
12345 | Sub MergeRows()Zakres("1:4").PołączNapis końcowy |
Wynik to:
Scal kolumny za pomocą VBA
Możesz scalać kolumny za pomocą VBA i liter kolumn. Poniższy kod połączy kolumny A:C.
12345 | Podrzędne kolumny scalające()Zakres("A:C").PołączNapis końcowy |
Wynik to:
Scal i wyśrodkuj zawartość komórki w poziomie
Zawartość komórek można scalać i wyśrodkować poziomo w zakresie komórek. Musisz scalić interesujące komórki, a także ustawić właściwość wyrównania w poziomie obiektu zakresu na środek. Mamy tekst w komórce A1, jak pokazano poniżej:
Poniższy kod scali zakres komórek A1:D1 i wyśrodkuje zawartość komórki A1 poziomo w tym zakresie komórek:
123456 | Sub MergeandCenterContentsPoziomo()Zakres("A1:D1").PołączZakres("A1:D1").HorizontalAlignment = xlCenterNapis końcowy |
Wynik to:
Scal i wyśrodkuj zawartość komórki w pionie
Możesz scalać i wyśrodkować zawartość komórek w pionie w zakresie komórek. Musisz scalić interesujące komórki, a także ustawić właściwość wyrównania w pionie obiektu zakresu na środek. Mamy tekst w komórce A1, jak pokazano poniżej:
Poniższy kod scali zakres komórek A1:A4 i wyśrodkuje zawartość komórki A1 pionowo w tym zakresie komórek:
123456 | Sub MergeandCenterContentsPionowo()Zakres("A1:A4").PołączZakres("A1:D1").VerticalAlignment = xlCenterNapis końcowy |
Wynik to:
Scal komórki w całym zakresie komórek
Możesz scalać komórki w zakresie komórek. Musisz ustawić opcjonalny parametr Across metody Merge na True. Mamy tekst w komórce A1, jak pokazano poniżej:
Poniższy kod połączy zakres komórek A1:D1:
12345 | Sub MergeCellsAcross()Zakres("A1:D1").Scal w poprzek:=PrawdaNapis końcowy |
Wynik to: