Jak używać unii w vba (z przykładem)


Możesz użyć metody Union w VBA, aby połączyć wiele zakresów w jeden.

Oto powszechny sposób wykorzystania tej metody w praktyce:

 SubUseUnion ()

Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"

End Sub

To konkretne makro łączy zakresy A1:A10 i C1:C10 w jeden zakres, a następnie przypisuje formułę Excel =RANDBETWEEN(1, 100) do każdej wartości w tym połączonym zakresie, co daje losową wartość od 1 do 100.

Poniższy przykład pokazuje jak w praktyce wykorzystać metodę Union w VBA.

Przykład: Jak używać Unii w VBA do łączenia zakresów

Możemy zdefiniować następujące makro w VBA, aby użyć metody Union do połączenia zakresów A1:A10 i C1:C10 :

 SubUseUnion ()

Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"

End Sub

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

Każda komórka w zakresach A1:A10 i C1:C10 zawiera teraz formułę =RANDBETWEEN(1, 100) , która zwraca losową liczbę całkowitą z zakresu od 1 do 100.

Należy również pamiętać, że w metodzie Unii możemy podać więcej niż dwa zakresy.

Na przykład moglibyśmy utworzyć następujące makro, które korzysta z metody Union w celu połączenia trzech różnych zakresów, a następnie wstawić formułę do komórki każdego zakresu:

 SubUseUnion ()

Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"), Range("D1:D5" ))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"

End Sub

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

Wszystkie trzy zakresy, które połączyliśmy w jeden, zawierają teraz formułę RANDBETWEEN .

Uwaga : Pełną dokumentację metody VBA Union znajdziesz tutaj .

Dodatkowe zasoby

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

Jak używać przecięcia w VBA
Jak policzyć liczbę kolumn używanych w VBA
Jak policzyć liczbę arkuszy w skoroszycie w VBA

Dodaj komentarz

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