VBA variabelt område - Eksempler på variabelt område i Excel VBA

Innholdsfortegnelse

Excel VBA variabel i rekkevidde

Variabler er hjertet og sjelen til alle store VBA-prosjekter siden variabler er hjerte og sjel, så er den typen datatype vi tildeler dem også en veldig viktig faktor i den forbindelse. I våre mange tidligere artikler har vi diskutert mange ganger om variabler og deres datatype betydning. En slik variabel og datatype er "Range Variable" i denne spesielle dedikerte artikkelen. Vi vil gi en komplett guide om "Range Variable" i excel VBA.

Hva er rekkevidde variabel i Excel VBA?

Som alle andre variabler i VBA, er variabelen også en variabel, men det er en "Objektvariabel" vi bruker for å angi referansen til det spesifikke celleområdet.

Som alle andre variabler, kan vi gi hvilket som helst navn til variabelen, men datatypen vi tildeler dem skal være et "Område". Når datatypen er tilordnet variabelen, blir den en "Objektvariabel", og i motsetning til en annen variabel, kan vi ikke begynne å bruke variabelen før vi setter referansen til objekter i tilfelle objektvariabler.

Så etter at vi har erklært variabelen, må vi bruke nøkkelordet "SET" for å angi objektreferansen, dvs. Range-objektet i dette tilfellet.

Ok, nå vil vi se noen av eksemplene på excel VBA Range Variables praktisk talt.

Eksempler på rekkevidde variabel i Excel VBA

Anta for eksempel at du vil velge celleområdet fra A2 til B10 for skjermbildet nedenfor.

For å velge dette nevnte celleområdet, alle disse mens vi har RANGE-objekt, og innenfor rekkevidden har vi nevnt celleadressen i dobbelt anførselstegn.

Kode:

Sub Range_Variable_Example () Range ("A2: B10") End Sub

Når celleområdet er nevnt ved hjelp av RANGE-objekt, hvis du setter en prikk, vil vi se alle egenskapene og metodene som er knyttet til dette rekkeviddeobjektet.

Kode:

Sub Range_Variable_Example () Range ("A2: B10"). Slutt Sub

Siden vi trenger å velge de nevnte cellene enkelt, velger du "Velg" -metoden fra IntelliSense-listen.

Kode:

Sub Range_Variable_Example () Range ("A2: B10"). Velg End Sub

Kjør koden, og den vil velge de nevnte cellene.

Dette er åpenbart, ikke sant, men forestill deg at scenariet med å bruke samme rekkevidde i det lange VBA-prosjektet la oss si hundre ganger, å skrive den samme koden som "Range (" A2: A10 ")" 100 ganger vil ta litt tid, men i stedet vil vi erklære variabelen og tilordne datatypen som "Range" -objekt.

Ok, la oss gi ditt eget navn til en variabel og tilordne datatypen til "Område".

Annet enn "Objektvariabler", kan vi begynne å bruke variablene etter navn, men når det gjelder "Objektvariabler", må vi angi referansen.

For eksempel, i dette tilfellet er vårt variable (Rng) objekt et område, så vi må sette referansen til ordet “Rng” skal referere til. For å angi referansen, må vi bruke søkeordet "Sett".

Nå refererer variabelen “Rng” til rekkevidden av celler fra A2 til B10. I stedet for å skrive "Range (" A2: B10 ")" " hver gang, kan vi bare skrive ordet " Rng. "

I neste linje, nevn variabelnavnet “Rng” og sett en prikk for å se magien.

Som du kan se ovenfor, kan vi se alle egenskapene og metodene til rekkeviddeobjekter som den forrige.

Gjør variabelen dynamisk

Nå vet vi hvordan vi skal sette referansen til celleområdet, men når vi først har nevnt celleområdet, holder det seg bare til disse cellene. Enhver tilsetning eller sletting av celler vil ikke påvirke disse cellene.

Så, å finne det nye cellesortimentet etter tilføyelse eller sletting av celler, gjør variabelen dynamisk i naturen. Dette er mulig ved å finne den sist brukte raden og kolonnen.

For å finne den sist brukte raden og kolonnen, må vi definere to variabler til.

Kode:

Underområde_Variabelt_eksempel () Dim Rng som område Dim LR så lenge 'LR = Siste rad for forståelse Dim LC Så lang' LC = Siste kolonne for forståelse av slutt sub

Nå under koden finner du den sist brukte raden og kolonnen før vi setter referansen til en variabel for objektobjekt.

Kode:

Underområde_Variabelt_eksempel () Dim Rng som område Dim LR så lenge 'LR = Siste rad for forståelse Dim LC så lang' LC = Siste kolonne for forståelse LR = celler (Rader. Antall, 1). End (xlUp). Rad LC = celler (1, Columns.Count) .End (xlToLeft) .Column End Sub

Åpne nå "Set" søkeorderklæringen.

Kode:

Underområde_Variabelt_eksempel () Dim Rng som område Dim LR så lenge 'LR = Siste rad for forståelse Dim LC så lang' LC = Siste kolonne for forståelse LR = celler (Rader. Antall, 1). End (xlUp). Rad LC = celler (1, Columns.Count) .End (xlToLeft). Column Set Rng = End Sub

Unlike the previous method, we use VBA CELLS properties this time.

Code:

Sub Range_Variable_Example() Dim Rng As Range Dim LR As Long 'LR = Last Row for Understanding Dim LC As Long 'LC = Last Column for Understanding LR = Cells(Rows.Count, 1).End(xlUp).Row LC = Cells(1, Columns.Count).End(xlToLeft).Column Set Rng = Cells(1, 1) End Sub

I have mentioned Cells(1,1), i.e., this refers to the first cell in the active sheet, but we need the data range reference, so use the “RESIZE” property and mention “last used row & column” variables.

Code:

Sub Range_Variable_Example() Dim Rng As Range Dim LR As Long 'LR = Last Row for Understanding Dim LC As Long 'LC = Last Column for Understanding LR = Cells(Rows.Count, 1).End(xlUp).Row LC = Cells(1, Columns.Count).End(xlToLeft).Column Set Rng = Cells(1, 1).Resize(LR, LC) End Sub

Nå vil dette sette den siste referansen til rekkeviddeobjektvariabelen "Rng." Deretter nevner du variabelnavnet og bruker "Velg" -metoden.

Underområde_Variabelt_eksempel () Dim Rng som område Dim LR så lenge 'LR = Siste rad for å forstå Dim LC Så lang' LC = Siste kolonne for å forstå LR = celler (Rader. Antall, 1). End (xlUp). Rad LC = celler (1, Columns.Count) .End (xlToLeft). Column Set Rng = Cells (1, 1). Resize (LR, LC) Rng. Select End Sub

Nå vil jeg legge til noen flere linjer i dataene mine.

Jeg har lagt til tre ekstra datalinjer. Hvis jeg kjører koden nå, bør den velge det nyeste dataområdet.

Ting å huske

  • Områdevariabelen i excel VBA er en objektvariabel.
  • Hver gang vi bruker objektvariabelen, må vi bruke nøkkelordet "Sett" og sette objektreferansen til variabelen.
  • Uten å angi referansen, kan vi ikke bruke en objektvariabel.

Interessante artikler...