VBA Unió - Csatlakozzon több tartományhoz az Excel VBA Union használatával

Tartalomjegyzék

Excel VBA Unió

Az Union a VBA-ban hasonló a többi programozási nyelv uniójához, a VBA-ban az union-ot használjuk, hogy kettőt vagy több mint két tartományt egyesítsünk, hogy különböző műveletsorokat hajtsunk végre rajtuk, az erre használt utasítás maga is unió, és unió metódusnak hívják például Union (tartomány (B2: C7), tartomány (D2: E7)). válassza ki, és ez a módszer kiválasztja a cellákat.

Az Union módszer elvégzi a két vagy több tartományú unió létrehozásának feladatát, és az eredményt RANGE objektumként adja vissza. Ez pontosan ugyanúgy működik, mint az alábbi példa a VBA RANGE objektummal.

Szintaxis

Most vessen egy pillantást az UNION módszer szintaxisára.

Legalább 2 tartományt kell megadnunk.

  • Arg 1: Ez az első cellatartomány, amelynek létre kell hoznunk az uniót.
  • Arg 2: Ez a második cellatartomány, amelynek létre kell hoznunk az uniót.

Először két paraméter kötelező, két cellatartomány megemlítése után, majd az összes többi argumentum opcionálisá válik.

Amikor az adatokat darabokban szétszórják a cellákban, az összes adattartományt össze kell egyesítenünk egy közös feladat elvégzéséhez. Hozhatunk létre egy szétszórt tartományú uniót, hogy hasonló feladatot hajtsunk végre az összes unió tartományban.

Több cellatartomány kiválasztásához általában RANGE objektumot használhatunk. Például, ha ki akarjuk választani az A1 és B5, valamint a B3 és a D5 közötti cellatartományt, akkor megírhatjuk a VBA kódot az alábbiak szerint.

Kód:

Sub Union_Példa1 () Union (Tartomány ("A1: B5"), Tartomány ("B3: D5")). Válassza a Vége al

Ez kiválasztaná a cellák tartományát, mint az alábbi kép.

Amint a fenti képen láthatjuk, az első tartományt A1-től B5-ig, a második tartományt pedig B3-tól D5-ig választjuk.

Ez az általános technika, amelyet mindannyian használtunk a kódolás során. Ez azonban nem az egyetlen módszer a VBA kódolására; használhatunk még egy "unió" nevű módszert két vagy több tartományú unió létrehozására.

Hogyan lehet a VBA Union módszerrel belépni a több tartományba?

1. példa

Végezzük el ugyanazt a felvételt, mint a fenti példában, de ezúttal az UNION módszerrel.

1. lépés - Nyissa meg az UNION funkciót az alfolyamatban.

Kód:

Sub Union_Példa1 () Union (End Sub

2. lépés - Említse meg az első cellatartományt a RANGE objektum használatával. Ebben az esetben az első cellatartományt A1-től B5-ig említem .

Kód:

Sub Union_Példa1 () Union (Range ("A1: A5"), End Sub

3. lépés - Most említsük meg a RANGE objektumot használó második cellatartományt, ebben az esetben a cellák tartományát B3-tól D5-ig említem .

Kód:

Sub Union_Példa1 () Union (Range ("A1: A5"), Range ("B3: B5")) End Sub

4. lépés - Miután létrehoztuk ezen sejttartomány unióját, el kell döntenünk, hogy mit kell tennünk ezzel az egyesülési cellatartománnyal. Helyezze a pontot (.) Az IntelliSense lista megtekintéséhez.

Kód:

Sub Union_Példa1 () Union (Tartomány ("A1: A5"), Tartomány ("B3: B5")). End Sub

5. lépés - Megtekinthetjük ezen tartományok összes elérhető tulajdonságát és módszerét.

Ebben a példában megváltoztatom az unió cellák belső színét. Ehhez először ki kell választanom a Interior tulajdonságot.

Kód:

Sub Union_Példa1 () Union (Tartomány ("A1: A5"), Tartomány ("B3: B5")).

6. lépés - A belső tulajdonságokkal sok mindent megtehetünk, de mivel meg kell változtatnunk az egyesítési cellák színét, a Szín tulajdonságot választom.

Kód:

Sub Union_Példa1 () Union (Tartomány ("A1: A5"), Tartomány ("B3: B5")). Belső.Szín Vége Al

7. lépés - Most be kell állítanunk a színtulajdonságot. Beépített színindex tulajdonságot fogok használni vbGreen néven.

Kód:

Sub Union_Példa1 () Union (Tartomány ("A1: A5"), Tartomány ("B3: B5")). Interior.Color = vbGreen End Sub

Step 8 - Now if I run the code colours of the union cells will be changed to Green colour.

Like this using Union method, we can create unison of two or more range of cells.

Example #2 - Use Variables to Store Range of Cells

All most all the coders use variables to store the reference of the range of cells. For example, look at the below code.

Code:

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

First, I have declared two variables as Range.

Dim Rng1 As Range

Dim Rng2 As Range

Then I have set the reference for these two variables.

Set Rng1 = Range(“A1:B5”)

Set Rng2 = Range(“B3:D5”)

Now variable rng1 holds the reference of Range(“A1:B5”) and the second variable rng2 holds the reference of Range(“B3:D5”).

Then I have applied UNION function to change the interior colour of these range of cells.

This also works exactly the same as the previous one, but using variable makes the code very flexible to use.

Error with Union Function

As I told all the references should be mandatory for the UNION method. For example, look at the below 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

This is similar to the previous, but here I have declared one more variable as Range.

Dim Rng3 As Range

But I have not set the reference to this variable. Rather I just supplied the variable to the UNION function.

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

If I run this code, we will get the error like the below.

Ennek az az oka, hogy bármi is legyen az a változó, amelyet az argumentumhoz szolgáltatunk, tartalmaznia kell valamilyen hivatkozást a munkalap celláira.

érdekes cikkek...