Uniunea VBA - Alăturați-vă mai multor game folosind Excel VBA Union

Excel VBA Union

Uniunea în VBA este similară cu uniunea din alte limbaje de programare, în VBA folosim uniunea pentru a combina două sau mai mult de două intervale pentru a efectua seturi diferite de operații pe ele, afirmația utilizată pentru aceasta este ea însăși unire și se numește ca metodă de unire , de exemplu, uniune (Range (B2: C7), Range (D2: E7)). selectați și această metodă va selecta celulele.

Metoda unirii îndeplinește sarcina de a crea o uniune de două sau mai multe intervale și returnează rezultatul ca obiect RANGE. Acest lucru funcționează exact la fel ca exemplul de mai jos cu obiectul VBA RANGE.

Sintaxă

Acum aruncați o privire asupra sintaxei metodei UNION.

Trebuie să furnizăm cel puțin 2 game.

  • Arg 1: Aceasta este prima gamă de celule de care avem nevoie pentru a crea uniunea.
  • Arg 2: Aceasta este a doua gamă de celule de care avem nevoie pentru a crea o uniune.

Primii doi parametri sunt obligatorii, după menționarea a două game de celule, apoi toate celelalte argumente devin opționale.

Când datele sunt împrăștiate în bucăți în celule, trebuie să combinăm împreună întreaga gamă de date pentru a realiza o sarcină comună. Putem crea o uniune de interval dispersat la una pentru a efectua o sarcină similară pentru toate intervalele de unire.

Pentru a selecta mai multe game de celule, putem folosi de obicei obiectul RANGE. De exemplu, dacă dorim să selectăm intervalul de celule de la A1 la B5 și de la B3 la D5, putem scrie codul VBA ca mai jos.

Cod:

Sub Union_Example1 () Union (Range ("A1: B5"), Range ("B3: D5")). Selectați End Sub

Aceasta ar selecta gama de celule, cum ar fi imaginea de mai jos.

După cum putem vedea în imaginea de mai sus, primul interval este selectat de la A1 la B5, iar al doilea interval este selectat de la B3 la D5.

Aceasta este tehnica comună pe care am folosit-o cu toții în timpul codării. Cu toate acestea, aceasta nu este singura metodă pe care o avem în codarea în VBA; putem folosi, de asemenea, încă o metodă numită „uniune” pentru a crea o uniune de două sau mai multe game.

Cum se utilizează metoda VBA Union pentru a se alătura mai multor game?

Exemplul nr. 1

Să efectuăm aceeași preluare ca în exemplul de mai sus, dar de data aceasta folosind metoda UNION.

Pasul 1 - Deschideți funcția UNION în subprocedură.

Cod:

Sub Union_Example1 () Union (End Sub

Pasul 2 - Menționați prima gamă de celule folosind obiectul RANGE. În acest caz, menționez prima gamă de celule ca A1 la B5 .

Cod:

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

Pasul 3 - Menționați acum a doua gamă de celule folosind obiectul RANGE, în acest caz, menționez gama de celule ca B3 la D5 .

Cod:

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

Pasul 4 - După crearea uniunii acestor game de celule, trebuie să decidem ce trebuie să facem cu această gamă de celule. Puneți punctul (.) Pentru a vedea lista IntelliSense.

Cod:

Sub Union_Example1 () Union (Range ("A1: A5"), Range ("B3: B5")). Sfârșitul Sub

Pasul 5 - Putem vedea toate proprietățile disponibile și metodele acestor intervale.

Pentru acest exemplu, voi schimba culoarea interioară a celulelor uniunii. Pentru aceasta, mai întâi trebuie să selectez proprietatea de interior.

Cod:

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

Pasul 6 - Cu proprietatea interioară, putem face multe lucruri, dar din moment ce trebuie să schimbăm culoarea celulelor de unire, voi selecta proprietatea Culoare.

Cod:

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

Pasul 7 - Acum, trebuie să setăm proprietatea culorii. Voi folosi o proprietate de index de culoare încorporată ca vbGreen.

Cod:

Sub Union_Example1 () Union (Range ("A1: A5"), Range ("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.

Acest lucru se datorează faptului că oricare ar fi variabila pe care o furnizăm argumentului ar trebui să conțină o referință a celulelor din foaia de lucru la care lucrăm.

Articole interesante...