ВБА Унион - Придружите се више опсега користећи Екцел ВБА Унион

Преглед садржаја

Екцел ВБА Унион

Унија у ВБА слична је унији у другим програмским језицима, у ВБА користимо унију да комбинујемо два или више од два опсега да бисмо извршили различите скупове операција на њима, изјава која се користи за ово је сама по себи унија и назива се унија методом , на пример, унија (опсег (Б2: Ц7), опсег (Д2: Е7)). селецт и овај метод ће одабрати ћелије.

Метода уније извршава задатак стварања обједињавања два или више опсега и враћа резултат као РАНГЕ објект. Ово ради потпуно исто као пример у наставку са објектом ВБА РАНГЕ.

Синтакса

Сада погледајте синтаксу методе УНИОН.

Морамо да испоручимо најмање 2 домета.

  • Арг. 1: Ово је први опсег ћелија које треба да створимо унију.
  • Арг. 2: Ово је други опсег ћелија од којих треба да створимо унију.

Прва два параметра су обавезна, након помињања два опсега ћелија, тада сви остали аргументи постају опционални.

Када су подаци раштркани у комадима по ћелијама, треба да комбинујемо сав опсег података у један да бисмо извршили заједнички задатак. Можемо створити унију расејаног опсега до једне да бисмо извршили сличан задатак за све домете уније.

Да бисмо изабрали више опсега ћелија, обично можемо користити РАНГЕ објект. На пример, ако желимо да изаберемо опсег ћелија од А1 до Б5 и од Б3 до Д5, можемо да напишемо ВБА код као у наставку.

Шифра:

Суб Унион_Екампле1 () Унион (опсег ("А1: Б5"), опсег ("Б3: Д5")). Изаберите Енд Суб

Ово би изабрало опсег ћелија попут доње слике.

Као што видимо на горњој слици, први опсег је изабран од А1 до Б5, а други опсег је одабран од Б3 до Д5.

Ово је уобичајена техника коју смо сви користили током кодирања. Међутим, ово није једина метода коју имамо у кодирању у ВБА; такође можемо користити још једну методу која се назива „унија“ да бисмо створили унију од два или више опсега.

Како се користи метода ВБА Унион за придруживање више опсега?

Пример # 1

Изведимо исти снимак као и у горњем примеру, али овог пута методом УНИОН.

Корак 1 - Отворите функцију УНИОН у потпоступку.

Шифра:

Суб Унион_Екампле1 () Унион (Крај Суб

Корак 2 - Помените први опсег ћелија помоћу објекта РАНГЕ. У овом случају, помињем први опсег ћелија као А1 до Б5 .

Шифра:

Суб Унион_Екампле1 () Унион (Опсег ("А1: А5"), Крај Суб

Корак 3 - Сад спомените други опсег ћелија помоћу објекта РАНГЕ, у овом случају спомињем опсег ћелија као Б3 до Д5 .

Шифра:

Суб Унион_Екампле1 () Унион (Ранге ("А1: А5"), Ранге ("Б3: Б5")) Крај Суб

Корак 4 - Након стварања сједињења овог опсега ћелија, морамо да одлучимо шта треба да радимо са овим обимом ћелија. Ставите тачку (.) Да бисте видели листу ИнтеллиСенсе.

Шифра:

Суб Унион_Екампле1 () Унион (опсег ("А1: А5"), опсег ("Б3: Б5")). Енд Суб

Корак 5 - Можемо видети сва расположива својства и методе ових опсега.

У овом примеру променићу унутрашњу боју спојних ћелија. За ово прво морам да изаберем својство Ентеријер.

Шифра:

Суб Унион_Екампле1 () Унион (Опсег ("А1: А5"), Опсег ("Б3: Б5")). Унутрашњи крај Суб

Корак 6 - Са унутрашњим својством можемо учинити много ствари, али пошто морамо да променимо боју спојних ћелија, изабраћу својство Цолор.

Шифра:

Суб Унион_Екампле1 () Унион (Опсег ("А1: А5"), Опсег ("Б3: Б5")). Ентеријер.Боја Крај Суб

Корак 7 - Сада морамо да поставимо својство боје. Користићу уграђено својство индекса боја као вбГреен.

Шифра:

Суб Унион_Екампле1 () Унион (опсег ("А1: А5"), опсег ("Б3: Б5")). Интериор.Цолор = вбГреен Енд Суб

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.

То је зато што би било која променљива коју достављамо аргументу требало да садржи неку референцу ћелија у радном листу на којем радимо.

Занимљиви Чланци...