VBA Union

Excel VBA Union

Union in VBA ähnelt der Union in anderen Programmiersprachen. In VBA verwenden wir Union, um zwei oder mehr als zwei Bereiche zu kombinieren, um unterschiedliche Sätze von Operationen für sie auszuführen. Die dafür verwendete Anweisung ist selbst Union und wird als Union-Methode bezeichnet Beispiel: Vereinigung (Bereich (B2: C7), Bereich (D2: E7)). Wählen Sie und diese Methode wählt die Zellen aus.

Die Union-Methode führt die Aufgabe aus, eine Union aus zwei oder mehr Bereichen zu erstellen, und gibt das Ergebnis als RANGE-Objekt zurück. Dies funktioniert genauso wie im folgenden Beispiel mit dem VBA RANGE-Objekt.

Syntax

Schauen Sie sich nun die Syntax der UNION-Methode an.

Wir müssen mindestens 2 Bereiche liefern.

  • Arg 1: Dies ist der erste Bereich von Zellen, den wir benötigen, um die Vereinigung von zu erstellen.
  • Arg 2: Dies ist der zweite Bereich von Zellen, für den wir eine Vereinigung von Zellen erstellen müssen.

Die ersten beiden Parameter sind obligatorisch. Nachdem zwei Zellenbereiche erwähnt wurden, werden alle anderen Argumente optional.

Wenn die Daten in Zellen in Teilen verstreut sind, müssen wir den gesamten Datenbereich zu einem kombinieren, um eine gemeinsame Aufgabe auszuführen. Wir können eine Vereinigung von Streubereichen zu Eins erstellen, um eine ähnliche Aufgabe für alle Vereinigungsbereiche auszuführen.

Um mehrere Zellbereiche auszuwählen, können wir normalerweise das RANGE-Objekt verwenden. Wenn wir beispielsweise den Zellenbereich von A1 bis B5 und von B3 bis D5 auswählen möchten, können wir den VBA-Code wie folgt schreiben.

Code:

 Sub Union_Example1 () Union (Bereich ("A1: B5"), Bereich ("B3: D5")). Wählen Sie End Sub 

Dies würde den Zellenbereich wie im folgenden Bild auswählen.

Wie wir im obigen Bild sehen können, wird der erste Bereich von A1 bis B5 und der zweite Bereich von B3 bis D5 ausgewählt.

Dies ist die übliche Technik, die wir alle beim Codieren verwendet haben. Dies ist jedoch nicht die einzige Methode, die wir beim Codieren in VBA verwenden. Wir können auch eine weitere Methode namens "Vereinigung" verwenden, um eine Vereinigung von zwei oder mehr Bereichen zu erstellen.

Wie verwende ich die VBA Union-Methode, um mehrere Bereiche zu verbinden?

Sie können diese VBA Union Excel-Vorlage hier herunterladen - VBA Union Excel-Vorlage

Beispiel 1

Lassen Sie uns den gleichen Take wie im obigen Beispiel durchführen, diesmal jedoch mit der UNION-Methode.

Schritt 1 - Öffnen Sie die UNION-Funktion in der Unterprozedur.

Code:

 Sub Union_Example1 () Union (End Sub 

Schritt 2 - Erwähnen Sie den ersten Zellenbereich mit dem RANGE-Objekt. In diesem Fall erwähne ich den ersten Zellbereich als A1 bis B5 .

Code:

 Sub Union_Example1 () Union (Bereich ("A1: A5"), End Sub 

Schritt 3 - Erwähnen Sie nun den zweiten Zellbereich mit dem RANGE-Objekt. In diesem Fall erwähne ich den Zellbereich als B3 bis D5 .

Code:

 Sub Union_Example1 () Union (Bereich ("A1: A5"), Bereich ("B3: B5")) End Sub 

Schritt 4 - Nachdem wir die Vereinigung dieser Zellbereiche erstellt haben, müssen wir entscheiden, was mit diesem Vereinigungsbereich von Zellen geschehen soll. Setzen Sie den Punkt (.) , Um die IntelliSense-Liste anzuzeigen.

Code:

Sub Union_Example1 () Union (Bereich ("A1: A5"), Bereich ("B3: B5")). End Sub

Schritt 5 - Wir können alle verfügbaren Eigenschaften und Methoden dieser Bereiche sehen.

In diesem Beispiel werde ich die Innenfarbe von Vereinigungszellen ändern. Dazu muss ich zuerst die Eigenschaft Interior auswählen.

Code:

 Sub Union_Example1 () Union (Bereich ("A1: A5"), Bereich ("B3: B5")). Interior End Sub 

Schritt 6 - Mit der inneren Eigenschaft können wir viele Dinge tun, aber da wir die Farbe der Vereinigungszellen ändern müssen, werde ich die Eigenschaft Farbe auswählen.

Code:

 Sub Union_Example1 () Union (Bereich ("A1: A5"), Bereich ("B3: B5")). Interior.Color End Sub 

Schritt 7 - Jetzt müssen wir die Farbeigenschaft festlegen. Ich werde eine eingebaute Farbindex-Eigenschaft als vbGreen verwenden.

Code:

 Sub Union_Example1 () Union (Bereich ("A1: A5"), Bereich ("B3: B5")). Interior.Color = vbGreen End Sub 

Schritt 8 - Wenn ich jetzt die Codefarben der Vereinigungszellen ausführe, werden sie in grüne Farbe geändert.

Auf diese Weise können wir mit der Union-Methode zwei oder mehr Zellbereiche vereinen.

Beispiel 2 - Verwenden Sie Variablen, um den Zellbereich zu speichern

Alle fast alle Codierer verwenden Variablen, um die Referenz des Zellbereichs zu speichern. Ein Beispiel finden Sie im folgenden Code.

Code:

 Sub Union_Example2 () Dim Rng1 als Bereich Dim Rng2 als Bereich Set Rng1 = Bereich ("A1: B5") Set Rng2 = Bereich ("B3: D5") Union (Rng1, Rng2) .Interior.Color = vbGreen End Sub 

Zuerst habe ich zwei Variablen als Bereich deklariert.

Rng1 als Bereich dimmen

Dim Rng2 As Range

Dann habe ich die Referenz für diese beiden Variablen festgelegt.

Setze Rng1 = Bereich ("A1: B5")

Setze Rng2 = Bereich ("B3: D5")

Jetzt enthält die Variable rng1 die Referenz des Bereichs („A1: B5“) und die zweite Variable rng2 enthält die Referenz des Bereichs („B3: D5“).

Dann habe ich die UNION-Funktion angewendet, um die Innenfarbe dieser Zellbereiche zu ändern.

Dies funktioniert genauso wie das vorherige, aber die Verwendung von Variablen macht die Verwendung des Codes sehr flexibel.

Fehler mit der Union-Funktion

Wie ich bereits sagte, sollten alle Referenzen für die UNION-Methode obligatorisch sein. Ein Beispiel finden Sie im folgenden Code.

Code:

 Sub Union_Example3 () Dim Rng1 As Range Dim Rng2 As Range Dim Rng3 As Range Set Rng1 = Range ("A1: B5") Set Rng2 = Range ("B3: D5") Union (Rng1, Rng2, Rng3) .Interior.Color = vbGreen End Sub 

Dies ist ähnlich wie beim vorherigen, aber hier habe ich eine weitere Variable als Range deklariert.

Dim Rng3 As Range

Ich habe den Verweis auf diese Variable jedoch nicht festgelegt, sondern nur die UNION-Funktion mit der Variablen versehen.

Union (Rng1, Rng2, Rng3) .Interior.Color = vbGreen

Wenn ich diesen Code ausführe, wird der folgende Fehler angezeigt.

Dies liegt daran, dass unabhängig von der Variablen, die wir dem Argument zur Verfügung stellen, ein Verweis auf die Zellen im Arbeitsblatt enthalten sein sollte, an dem wir arbeiten.