Nastavite obseg v Excelu VBA
Nastavi obseg vba pomeni, da določimo določen obseg kode ali postopka za izvedbo, če kodi ne zagotovimo določenega obsega, bo samodejno prevzel obseg iz delovnega lista, ki ima aktivno celico, zato je zelo pomembno, da koda, za katero je nastavljena spremenljivka obsega.
Po toliko letih dela z Excelom ste zagotovo razumeli, da so vsa dela, ki jih opravljamo, na delovnem listu, na delovnih listih pa so podatki, ki vsebujejo celice. Torej, ko se želite poigrati s podatki, morate biti delovni vzorec celic na delovnih listih. Torej, ko se zbere več celic, postane RANGE. Če se želite naučiti VBA, morate vedeti vse o celicah in območjih. Torej, v tem članku vam bomo pokazali, kako podrobno nastavite obseg celic, ki jih je mogoče uporabiti za kodiranje VBA.

Kaj je objekt obsega?
Obseg v VBA se imenuje objekt. Obseg lahko vsebuje eno celico, več celic, vrstico ali stolpec itd.…
V VBA lahko razvrstimo razpon kot spodaj.
“Aplikacija >>> Delovni zvezek >>> Delovni list >>> Obseg«
Najprej moramo dostopati do aplikacije. Potem se moramo pod tem sklicevati na to, na kateri delovni zvezek se sklicujemo, v delovnem zvezku pa na kateri delovni list se sklicujemo, nato pa na delovnem listu omenimo obseg celic.
Z uporabo obsega celic lahko v celico ali celice vnesemo vrednost, lahko beremo ali dobimo vrednosti iz celice ali celic, lahko izbrišemo, lahko formatiramo in lahko naredimo tudi marsikaj drugega.
Kako dostopati do obsega celic v Excelu VBA?
Pri kodiranju VBA se lahko na celico sklicujemo z uporabo lastnosti VBA CELLS in predmeta RANGE. Na primer, če se želite na primer sklicevati na celico A1, bomo najprej videli objekt RANGE.
Znotraj podprocedure moramo najprej odpreti objekt RANGE.
Koda:
Sub Range_Examples () Range (End Sub

Kot lahko vidite zgoraj, objekt RANGE sprašuje, na katero celico se sklicujemo. Torej moramo naslov celice vnesti z dvojnimi narekovaji.
Koda:
Podobmočje_Primeri () Obseg ("A1") Konec Sub

Ko je naveden naslov celice, se moramo nato z lastnostmi in metodami odločiti, kaj storiti s to celico. Zdaj postavite piko, da si ogledate lastnosti in metode predmeta RANGE.

Če želimo v celico vstaviti vrednost, moramo izbrati lastnost »Value«.
Koda:
Sub Range_Examples () Obseg ("A1"). Vrednost Konec Sub

Za nastavitev vrednosti moramo postaviti enačbo in v celico A1 vnesti vrednost, ki jo želimo vstaviti.
Koda:
Sub Range_Examples () Obseg ("A1"). Value = "Razred Excel VBA" End Sub

Zaženite kodo prek možnosti zagon in si oglejte čarovništvo v celici A1.

Kot je omenjeno v kodi, imamo vrednost v celici A1.
Podobno se lahko na celico sklicujemo tudi z uporabo lastnosti CELLS. Odprite lastnost CELLS in si oglejte sintakso.

To je za razliko od predmeta RANGE, kjer lahko naslov celice vnesemo neposredno v dvojne narekovaje. Namesto tega moramo navesti številko vrstice in stolpec, ki se nanaša na celico. Ker se sklicujemo na celico A1, lahko rečemo, da je vrstica 1, stolpec pa 1.

Po omembi naslova celice lahko uporabimo lastnosti in metode za delo s celicami. Toda težava tukaj je v nasprotju z objektom obsega po piki. Seznama IntelliSense ne vidimo.

Torej, morate biti strokovnjak za sklicevanje na celice z uporabo lastnosti CELLS.
Koda:
Sub CELLS_Examples () Celice (1, 1) .Value = "Razred Excel VBA" End Sub

Dostop do več celic in nastavitev referenc obsega v VBA
Ena od velikih razlik med CELLS & RANGE je uporaba CELLS. Dostopamo lahko samo do ene celice, vendar z uporabo RANGE. Dostopamo lahko tudi do več celic.
Na primer, za celice od A1 do B5, če želimo vrednost 50, lahko kodo napišemo kot spodaj.
Koda:
Sub Range_Examples () Obseg ("A1: B5"). Vrednost = 50 End Sub

To bo vstavilo vrednost 50 iz celice A1 do B5.

Namesto da se neposredno sklicujemo na celice, lahko s spremenljivko hranimo referenco določenih celic.
Najprej spremenljivko definirajte kot objekt »Obseg«.
Koda:
Sub Range_Primeri () Dim Rng As Range End Sub

Ko je spremenljivka definirana kot objekt »Obseg«, moramo za to spremenljivko nastaviti referenco o tem, kateri naslovi celic bodo vsebovali sklic.
Za nastavitev sklica moramo uporabiti ključno besedo »SET« in z uporabo predmeta RANGE vnesti naslove celic.
Koda:
Sub Range_Primeri () Dim Rng As Range Set Rng = Range ("A1: B5") End Sub

Zdaj se spremenljivka "Rng" nanaša na celice od A1 do B5.
Namesto da napišemo obseg naslovov celic (»A1: B5«), lahko preprosto uporabimo ime spremenljivke »Rng«.
Koda:
Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") Rng.Value = "Setting Setting" End Sub

Zdaj bo to vstavilo omenjeno vrednost iz celice A1 v celico B5.

Predpostavimo, da želite, da bi bila referenca izbrana celica, potem lahko referenco nastavimo na naslednji način.
Koda:
Sub Range_Examples () Dim Rng As Range Set Rng = Selection Rng.Value = "Seting Setting" End Sub

To je lepota, ker če izberem katero od celic in zaženem, bo vrednost vstavila tudi v te celice.
Na primer, izbral bom določene celice.

Zdaj bom izvršil kodo in videl, kaj se bo zgodilo.

V vse izbrane celice je vstavil vrednost.
Tako lahko nastavimo sklic na obseg z deklariranjem spremenljivk v VBA.
Stvari, ki si jih je treba zapomniti
- Obseg lahko izbere več celic, CELLS pa lahko izbere eno celico hkrati.
- RANGE je objekt, CELLS pa last.
- Kateri koli spremenljivki predmeta je treba določiti referenco predmeta s pomočjo ključne besede SET.