VBA Union - Bli med i flere områder ved hjelp av Excel VBA Union

Innholdsfortegnelse

Excel VBA Union

Union i VBA ligner på union i andre programmeringsspråk, i VBA bruker vi union for å kombinere to eller flere enn to områder for å utføre forskjellige sett med operasjoner på dem, utsagnet som brukes for dette er i seg selv union og det kalles som union metode , for eksempel union (Range (B2: C7), Range (D2: E7)). velg og denne metoden vil velge cellene.

Union-metoden utfører oppgaven med å opprette en union av to eller flere områder og returnerer resultatet som et RANGE-objekt. Dette fungerer nøyaktig det samme som eksemplet nedenfor med VBA RANGE-objekt.

Syntaks

Ta en titt på syntaksen til UNION-metoden.

Vi må levere minimum 2 områder.

  • Arg 1: Dette er det første celleområdet vi trenger for å skape en forening av.
  • Arg 2: Dette er det andre celleområdet vi trenger for å skape en forening av.

Først to parametere er obligatoriske, etter å ha nevnt to celler, så blir alle de andre argumentene valgfrie.

Når dataene er spredt i deler i celler, må vi kombinere hele dataområdet til en for å utføre en felles oppgave. Vi kan opprette en forening av spredt område til en for å utføre en lignende oppgave for alle foreningsområdene.

For å velge flere celleområder, kan vi vanligvis bruke RANGE-objekt. For eksempel, hvis vi vil velge celleområdet fra A1 til B5 og fra B3 til D5, kan vi skrive VBA-koden som nedenfor.

Kode:

Sub Union_Example1 () Union (Range ("A1: B5"), Range ("B3: D5")). Velg End Sub

Dette vil velge celleområdet som bildet nedenfor.

Som vi kan se i bildet ovenfor er det første området valgt fra A1 til B5, og det andre området er valgt fra B3 til D5.

Dette er den vanlige teknikken vi alle har brukt under koding. Dette er imidlertid ikke den eneste metoden vi har i koding i VBA; vi kan også bruke en annen metode kalt “union” for å skape en union av to eller flere områder.

Hvordan bruke VBA Union-metoden for å bli med i flere områder?

Eksempel 1

La oss utføre det samme tatt som vi gjorde i eksemplet ovenfor, men denne gangen ved å bruke UNION-metoden.

Trinn 1 - Åpne UNION-funksjonen i underprosedyren.

Kode:

Sub Union_Example1 () Union (End Sub

Trinn 2 - Nevn det første celleområdet med RANGE-objekt. I dette tilfellet nevner jeg det første celleområdet som A1 til B5 .

Kode:

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

Trinn 3 - Nevn nå det andre celleområdet med RANGE-objekt, i dette tilfellet nevner jeg celleområdet som B3 til D5 .

Kode:

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

Trinn 4 - Etter å ha opprettet foreningen av disse cellene, må vi bestemme hva vi trenger å gjøre med dette foreningen av celler. Sett prikk (.) For å se IntelliSense-listen.

Kode:

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

Trinn 5 - Vi kan se alle tilgjengelige egenskaper og metoder for disse områdene.

For dette eksemplet vil jeg endre interiørfargen på unionceller. For dette må jeg først velge egenskapen Interiør.

Kode:

Sub Union_Example1 () Union (Range ("A1: A5"), Range ("B3: B5")). Interiør End Sub

Trinn 6 - Med interiøregenskap kan vi gjøre mange ting, men siden vi trenger å endre fargen på unioncellene, vil jeg velge Color-egenskap.

Kode:

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

Trinn 7 - Nå må vi sette fargeegenskapen. Jeg vil bruke en innebygd fargeindeksegenskap som vbGreen.

Kode:

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.

Dette er uansett hvilken variabel vi leverer til argumentet, skal inneholde en referanse til cellene i regnearket vi jobber med.

Interessante artikler...