Raspon izbora VBA - Kako odabrati raspon u programu Excel VBA?

Raspon odabira za Excel VBA

Nakon što osnovnu napuni VBA, važno je razumjeti kako raditi s nizom ćelija na radnom listu. Jednom kad započnete s izvršavanjem kodova praktički većinu vremena, morate raditi s nizom stanica, pa je važno razumjeti kako raditi s nizom stanica, a jedan od takvih koncepata je VBA "Izbor raspona". U ovom ćemo vam članku pokazati kako raditi s "Rasponom odabira" u programu Excel VBA.

Odabir i opseg dvije su različite teme, ali kad kažemo da odaberemo opseg ili odaberemo opseg, to je jedan koncept. RANGE je objekt, "Odabir" je svojstvo, a "Select" je metoda. Ljudi se obično miješaju s tim pojmovima. Važno je znati razlike uopće.

Kako odabrati raspon u programu Excel VBA?

Primjer # 1

Na primjer, pretpostavimo da tada želite odabrati ćeliju A1 na radnom listu. Prvo, moramo odrediti adresu ćelije pomoću objekta RANGE kao u nastavku.

Kodirati:

Nakon što smo spomenuli ćeliju koju moramo odabrati, stavite točku da biste vidjeli popis IntelliSense koji je povezan s objektom RANGE.

Oblikujte ovu raznolikost popisa, odabire metodu "Select".

Kodirati:

Sub Range_Example1 () Raspon ("A1"). Odaberite End Sub

Sada će ovaj kôd odabrati ćeliju A1 na aktivnom radnom listu.

Ako želite odabrati ćeliju na različitim radnim listovima, prvo moramo navesti radni list njegovim imenom. Da bismo odredili radni list, trebamo upotrijebiti objekt “WORKSHEET” i unijeti naziv radnog lista u dvostruke navodnike.

Na primjer, ako želite odabrati ćeliju A1 na radnom listu "Data Sheet", tada prvo navedite radni list baš kao u nastavku.

Kodirati:

Sub Range_Example1 () Radni listovi ("Data Sheet") Kraj Sub

Zatim nastavite s kodom kako biste odredili što trebamo učiniti na ovom listu. U "Data Sheetu" moramo odabrati ćeliju A1, tako da će kôd biti RANGE ("A1"). Odaberite.

Kodirati:

Sub Range_Example1 () Radni listovi ("Data Sheet"). Range ("A1"). Odaberite End Sub

Kad pokušate izvršiti ovaj kôd, dobit ćemo donju pogrešku.

Razlog tome je "ne možemo izravno dostaviti objekt raspona i odabrati metodu na objekt radnih listova."

Prvo moramo odabrati ili aktivirati VBA radni list, a zatim možemo raditi sve što smo željeli.

Kodirati:

Sub Range_Example1 () Radni listovi ("List s podacima"). Aktivirajte raspon ("A1"). Odaberite End Sub

Sada ćete odabrati ćeliju A1 u radnom listu "Data Sheet".

Primjer # 2 - Rad s trenutnim odabranim rasponom

Odabir je druga stvar, a rad s već odabranim rasponom stanica je različit. Pretpostavimo da u ćeliju A1 želite umetnuti vrijednost "Hello VBA", a to možemo učiniti na dva načina.

Prvo, možemo izravno proslijediti VBA kôd kao RANGE ("A1"). Value = "Hello, VBA."

Kodirati:

Sub Range_Example1 () Raspon ("A1"). Value = "Hello VBA" End Sub

Što će ovaj kod učiniti, to će samo umetnuti vrijednost "Hello VBA" u ćeliju A1, bez obzira na to koja je ćelija trenutno odabrana.

Pogledajte gornji rezultat koda. Kada izvršimo ovaj kôd, umetnuo je vrijednost "Pozdrav VBA", iako je trenutno odabrana ćelija B2.

Drugo, vrijednost možemo umetnuti u ćeliju pomoću svojstva "Odabir". Za ovo prvo moramo ručno odabrati ćeliju i izvršiti kod.

Kodirati:

Sub Range_Example1 () Selection.Value = "Hello VBA" Kraj Sub

Što će ovaj kôd učiniti, to će umetnuti vrijednost "Hello VBA" u trenutno odabranu ćeliju. Na primjer, pogledajte donji primjer izvršenja.

Kad sam izvršio kôd, trenutna odabrana ćelija mi je bila B2, a naš je kôd ubacio istu vrijednost u trenutno odabranu ćeliju.

Sada ću odabrati ćeliju B3 i izvršiti, tamo ćemo također dobiti istu vrijednost.

Još jedna stvar koju možemo učiniti sa svojstvom "selection" jest da vrijednost možemo umetnuti i u više ćelija. Na primjer, sada ću odabrati raspon ćelija od A1 do B5.

Sada, ako izvršim kod, za sve odabrane ćelije dobit ćemo vrijednost kao "Pozdrav VBA."

Dakle, jednostavna razlika između specificiranja adrese ćelije RANGE objektom i svojstva Selection je, u Range objekt kôd će umetnuti vrijednost u ćelije koje su eksplicitno navedene.

Ali u objektu Selection nije važno u kojoj ste se ćeliji. Umetnut će spomenutu vrijednost u sve odabrane ćelije.

Stvari koje treba ovdje zapamtiti

  • Ne možemo izravno dostaviti metodu select u svojstvu Selection.
  • RANGE je objekt, a odabir je svojstvo.
  • Umjesto dometa, možemo koristiti svojstvo CELLS.

Zanimljivi članci...