VBA variabelt interval - Eksempler på variabelt interval i Excel VBA

Excel VBA variabel i rækkevidde

Variabler er hjertet og sjælen i alle store VBA-projekter, da variabler er hjerte og sjæl, så er den slags datatype, vi tildeler dem, også en meget vigtig faktor i den henseende. I vores mange tidligere artikler har vi diskuteret mange gange om variabler og deres datatypevigtighed. En sådan variabel og datatype er "Range Variable" i denne specielle dedikerede artikel. Vi vil give en komplet guide om "Range Variable" i excel VBA.

Hvad er rækkevidde variabel i Excel VBA?

Som alle andre variable Range i VBA er variablen også en variabel, men det er en "Objektvariabel", vi bruger til at indstille referencen for det specifikke celleområde.

Som enhver anden variabel kan vi give ethvert navn til variablen, men den datatype, vi tildeler dem, skal være et "Område". Når datatypen først er tildelt variablen, bliver den en "Objektvariabel", og i modsætning til en anden variabel kan vi ikke begynde at bruge variablen, før vi indstiller referencen til objekter i tilfælde af objektvariabler.

Så efter at vi har erklæret variablen, skal vi bruge nøgleordet "SET" til at indstille objektreferencen, dvs. Range-objekt i dette tilfælde.

Ok, nu vil vi se nogle af eksemplerne på excel VBA Range Variables praktisk.

Eksempler på rækkevidde variabel i Excel VBA

Antag for eksempel, at du vil vælge celleområdet fra A2 til B10 til nedenstående skærmbillede.

For at vælge dette nævnte celleområde, alle disse, mens vi har RANGE-objekt, og inden for rækkeviddeobjektet har vi nævnt celleadressen i dobbelt anførselstegn.

Kode:

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

Når celleområdet er nævnt ved hjælp af RANGE-objekt, hvis du sætter en prik, ville vi se alle de egenskaber og metoder, der er knyttet til dette intervalobjekt.

Kode:

Sub Range_Variable_Example () Range ("A2: B10"). Afslut sub

Da vi har brug for at vælge de nævnte celler enkle, skal du vælge "Vælg" -metoden fra IntelliSense-listen.

Kode:

Sub Range_Variable_Example () Range ("A2: B10"). Vælg End Sub

Kør koden, og den vælger de nævnte celler.

Dette er indlysende, er det ikke, men forestil dig scenariet med at bruge det samme område i det lange VBA-projekt, lad os sige hundrede gange, at skrive den samme kode som "Range (" A2: A10 ")" 100 gange vil tage noget tid, men i stedet erklærer vi variablen og tildeler datatypen som "Range" -objekt.

Ok, lad os give dit eget navn til en variabel og tildele datatypen som "Område".

Bortset fra "Objektvariabler" kan vi begynde at bruge variablerne efter deres navn, men i tilfælde af "Objektvariabler" skal vi indstille referencen.

For eksempel er vores variable (Rng) -objekt i dette tilfælde et område, så vi er nødt til at indstille henvisningen til ordet "Rng" vil henvise til. For at indstille referencen skal vi bruge nøgleordet "Sæt".

Nu henviser variablen “Rng” til celleområdet fra A2 til B10. I stedet for at skrive "Range (" A2: B10 "))" hver gang, kan vi blot skrive ordet "Rng."

I den næste linje skal du nævne variabelnavnet “Rng” og sætte en prik for at se magien.

Som du kan se ovenfor, kan vi se alle egenskaberne og metoderne for rækkeviddeobjekter som den forrige.

Lav den variable dynamiske

Nu ved vi, hvordan man indstiller henvisningen til celleområdet, men når vi først nævner celleområdet, holder det sig kun til disse celler. Enhver tilføjelse eller sletning af celler påvirker ikke disse celler.

Så at finde det nye celleområde efter enhver tilføjelse eller sletning af celler gør variablen dynamisk. Dette er muligt ved at finde den sidst anvendte række og kolonne.

For at finde den sidst anvendte række og kolonne skal vi definere to flere variabler.

Kode:

Underområde_Variabelt_eksempel () Dim Rng som område Dim LR så lang 'LR = Sidste række for forståelse Dim LC så lang' LC = Sidste kolonne til forståelse af slut sub

Nu vil nedenstående kode finde den sidst anvendte række & kolonne, før vi indstiller henvisningen til en variabel for rækkevidde.

Kode:

Underområde_Variabelt_eksempel () Dim Rng som område Dim LR så lang 'LR = Sidste række for forståelse Dim LC så lang' LC = Sidste kolonne til forståelse LR = celler (rækker. Antal, 1). Afslut (xlUp). Række LC = celler (1, Columns.Count) .End (xlToLeft) .Column End Sub

Åbn nu "Set" søgeordserklæringen.

Kode:

Underområde_Variabelt_eksempel () Dim Rng som område Dim LR så lang 'LR = Sidste række for forståelse Dim LC så lang' LC = Sidste kolonne til forståelse LR = celler (rækker. Antal, 1). Afslut (xlUp). Række 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

Nu vil dette indstille den seneste henvisning til områdets objektvariabel "Rng." Dernæst skal du nævne variabelnavnet og bruge metoden “Vælg”.

Underområde_Variabelt_eksempel () Dim Rng som område Dim LR så lang 'LR = Sidste række for forståelse Dim LC så lang' LC = Sidste kolonne til forståelse LR = celler (rækker. Antal, 1). Afslut (xlUp). Række LC = celler (1, Columns.Count) .End (xlToLeft). Column Set Rng = Cells (1, 1). Resize (LR, LC) Rng. Vælg End Sub

Nu vil jeg tilføje et par flere linjer til mine data.

Jeg har tilføjet tre ekstra datalinjer. Hvis jeg kører koden nu, skal den vælge det nyeste datainterval.

Ting at huske

  • Omfangsvariablen i excel VBA er en objektvariabel.
  • Hver gang vi bruger objektvariablen, skal vi bruge nøgleordet "Sæt" og indstille objektreferencen til variablen.
  • Uden at angive referencen kan vi ikke bruge en objektvariabel.

Interessante artikler...