Uporabne lastnosti predmetov obsega za Excel VBA, ki bi jih morali poznati vsi

Objekt Range ima na desetine lastnosti. Programe VBA lahko pišete neprekinjeno naslednjih 12 mesecev in jih nikoli ne uporabite vseh. Tukaj dobite kratek pregled nekaterih najpogosteje uporabljenih lastnosti obsega Excel VBA. Za popolne podrobnosti si oglejte sistem pomoči v VBE. (Oglejte si te dodatne vire za pomoč pri Excelu VBA .)

Nekatere lastnosti obsega Excel VBA so lastnosti samo za branje, kar pomeni, da lahko vaša koda pogleda njihove vrednosti, vendar jih ne more spremeniti (»Glejte, vendar se ne dotikajte«). Vsak predmet Excel VBA Range ima na primer lastnost Address, ki vsebuje naslov obsega. Do te lastnosti, ki je samo za branje, lahko dostopate, vendar je ne morete spremeniti – kar je povsem smiselno, če pomislite nanjo.

Mimogrede, primeri, ki sledijo, so običajno izjave in ne popolni postopki. Če želite poskusiti kar koli od tega (in bi morali), ustvarite podpostopek, da to storite. Prav tako mnogi od teh stavkov VBA delujejo pravilno le, če je delovni list aktiven list.

Excel VBA: Lastnost Vrednost

Lastnost Value predstavlja vrednost, ki jo vsebuje celica. Je lastnost branja-pisanja, tako da lahko vaša koda VBA prebere ali spremeni vrednost.

Naslednji stavek prikaže okno s sporočilom, ki prikazuje vrednost v celici A1 na listu 1:

MsgBox Worksheets("Sheet1").Range("A1").Value

Razumljivo je, da lahko lastnost Value berete samo za enocelični objekt Range. Na primer, naslednji stavek ustvari napako:

MsgBox Worksheets("Sheet1").Range("A1:C3").Value

Lahko pa spremenite lastnost Value za obseg poljubne velikosti. Naslednji stavek vnese številko 123 v vsako celico v obsegu:

Delovni listi("List1").Razpon("A1:C3").Vrednost = 123

Vrednost je privzeta lastnost za objekt obsega Excel VBA. Z drugimi besedami, če izpustite lastnost za obseg, Excel uporabi svojo lastnost Value. Naslednji stavki vneseta vrednost 75 v celico A1 aktivnega delovnega lista:

Obseg("A1").Vrednost = 75
Razpon ("A1") = 75

Excel VBA: Lastnost Besedilo

Lastnost Text vrne niz, ki predstavlja besedilo, kot je prikazano v celici – oblikovano vrednost. Lastnost Besedilo je samo za branje. Recimo, da celica A1 vsebuje vrednost 12,3 in je oblikovana tako, da prikaže dve decimalki in znak za dolar (12,30 $). Naslednji stavek prikaže sporočilo, ki vsebuje 12,30 $:

Delovni listi MsgBox("List1").Razpon("A1").Besedilo

Toda naslednji stavek prikaže sporočilo, ki vsebuje 12.3:

MsgBox Worksheets("Sheet1").Range("A1").Value

Če celica vsebuje formulo, lastnost Besedilo vrne rezultat formule. Če celica vsebuje besedilo, lastnost Besedilo in lastnost Vrednost vedno vrneta isto stvar, ker besedila (za razliko od števila) ni mogoče oblikovati za drugačen prikaz.

Excel VBA: Lastnost Count

Lastnost Count vrne število celic v obsegu. Šteje vse celice, ne samo neprazne celice. Število je lastnost samo za branje, tako kot bi pričakovali. Naslednji stavek dostopa do lastnosti Count obsega in prikaže rezultat (9) v sporočilnem polju:

Obseg MsgBox("A1:C3").Števec

Excel VBA: Lastnosti stolpca in vrstice

Lastnost Column vrne številko stolpca obsega ene celice. Njegova pomočnica, lastnost Vrstica, vrne številko vrstice enoceličnega obsega. Obe sta lastnosti samo za branje. Naslednji stavek na primer prikaže 6, ker je celica F3 v šestem stolpcu:

Listi MsgBox("List1").Razpon("F3").Stolpec

Naslednji izraz prikazuje 3, ker je celica F3 v tretji vrstici:

Listi MsgBox("List1").Razpon("F3").Vrstica

Če je objekt obsega Excel VBA sestavljen iz več kot ene celice, lastnost Column vrne številko stolpca prvega stolpca v obsegu, lastnost Vrstica pa številko vrstice prve vrstice v obsegu.

Ne zamenjujte lastnosti stolpca in vrstice z lastnostmi stolpcev in vrstic. Lastnosti stolpca in vrstice vrneta eno samo vrednost. Lastnosti stolpcev in vrstic po drugi strani vrnejo predmet Range. Kakšno razliko naredi "s".

Excel VBA: Lastnost Naslov

Naslov, lastnost samo za branje, prikaže naslov celice za objekt Range kot absolutno referenco (znak za dolar pred črko stolpca in pred številko vrstice). Naslednja izjava prikaže sporočilo, prikazano spodaj:

Obseg MsgBox(Celice(1, 1), Celice(5, 5)).Naslov

Uporabne lastnosti predmetov obsega za Excel VBA, ki bi jih morali poznati vsi

V tem sporočilnem polju je prikazana lastnost naslova obsega 5 na 5.

Excel VBA: lastnost HasFormula

Lastnost HasFormula (ki je samo za branje) vrne True, če obseg ene celice vsebuje formulo. Vrne False, če celica vsebuje nekaj drugega kot formula (ali je prazna). Če obseg obsega več kot eno celico, VBA vrne True samo, če vse celice v obsegu vsebujejo formulo ali False, če vse celice v obsegu nimajo formule. Lastnost vrne Null, če obseg vsebuje mešanico formul in neformul. Null je nekakšna nikogaršnja dežela: odgovor ni niti resnični niti napačen in vsaka celica v obsegu ima lahko formulo ali pa tudi ne.

Pri delu z lastnostmi, ki lahko vrnejo Null, morate biti previdni. Natančneje, edini tip podatkov, ki lahko obravnava ničelno vrednost, je Variant.

Predpostavimo na primer, da celica A1 vsebuje vrednost, celica A2 pa formulo. Naslednji stavki ustvarijo napako, ker obseg ni sestavljen iz vseh formul ali vseh neformul:

Dim FormulaTest kot Boolean
FormulaTest = Obseg("A1:A2").Ima formulo

Boolean podatkovni tip lahko obravnava samo True ali False. Null povzroči, da se Excel pritoži in prikaže sporočilo o napaki. Če želite popraviti to vrsto situacije, je najbolje, da se prepričate, da je spremenljivka FormulaTest deklarirana kot Variant in ne kot Boolean. Naslednji primer uporablja priročno funkcijo TypeName VBA (skupaj s konstrukcijo If-Then-Else), da določi tip podatkov spremenljivke FormulaTest. Če obseg vsebuje mešanico formul in neformul, se v sporočilnem polju prikaže Mešano! V nasprotnem primeru prikaže True ali False .

Sub CheckFormulas()
  Dim FormulaTest kot različica
  FormulaTest = Obseg("A1:A2").Ima formulo
  Če TypeName(FormulaTest) = "Null", potem
    MsgBox "Mešano!"
  Drugače
    MsgBox FormulaTest
  Konec Če
Končni sub

Excel VBA: Lastnost Pisava

Lastnost lahko vrne predmet. Lastnost Pisava predmeta Excel VBA Range je še en primer tega koncepta. Lastnost Font vrne objekt Font.

Kot lahko pričakujete, ima objekt Font veliko dostopnih lastnosti. Če želite spremeniti nekatere vidike pisave obsega, morate najprej dostopati do predmeta Pisava obsega in nato manipulirati z lastnostmi tega predmeta. To je morda zmedeno, a morda bo ta primer pomagal.

Naslednji stavek uporablja lastnost Font predmeta Range za vrnitev predmeta Pisava. Nato je lastnost Bold objekta Font nastavljena na True. V preprosti angleščini ta izjava naredi celico prikazano krepko:

Obseg("A1").Pisava.Bold = True

Resnica je, da vam v resnici ni treba vedeti, da delate s posebnim objektom Font, ki je vsebovan v predmetu obsega Excel VBA. Dokler uporabljate ustrezno sintakso, deluje v redu. Pogosto vam zapisovanje dejanj s snemalnikom makrov pove vse, kar morate vedeti o pravilni skladnji.

Excel VBA: Lastnost Notranjost

Tukaj je še en primer lastnosti, ki vrne predmet. Lastnost Interior objekta Range vrne objekt Interior (čudno ime, vendar se tako imenuje). Ta vrsta sklicevanja na objekt deluje na enak način kot lastnost Pisava.

Na primer, naslednji stavek spremeni lastnost Color objekta Interior, ki ga vsebuje objekt Range:

Razpon ("A1"). Notranjost. Barva = 8421504

Z drugimi besedami, ta izjava spremeni ozadje celice v srednje sivo. Kaj je to? Niste vedeli, da je 8421504 srednje siv? Za nekaj vpogledov v Excelov čudovit svet barv si oglejte bližnjo stransko vrstico »Primer za hitro in umazano barvo«.

Excel VBA: Lastnost Formula

Lastnost Formula predstavlja formulo v celici. To je lastnost branja in pisanja, tako da lahko dostopate do nje, da si ogledate formulo v celici ali vstavite formulo v celico. Na primer, naslednji stavek vnese formulo SUM v celico A13:

Obseg("A13").Formula = "=SUM(A1:A12)"

Upoštevajte, da je formula besedilni niz in je zaprta v narekovajih. Upoštevajte tudi, da se formula začne z znakom enakosti, tako kot vse formule.

Če formula sama vsebuje narekovaje, postanejo stvari nekoliko zapletene. Recimo, da želite vstaviti to formulo z uporabo VBA:

=SUM(A1:A12)&"Trgovine"

Ta formula prikaže vrednost, ki ji sledi beseda Stores . Da bo ta formula sprejemljiva, morate vsak narekovaje v formuli zamenjati z dvema narekovajema. V nasprotnem primeru se VBA zmede in trdi, da je sintaksična napaka (ker obstaja!). Tukaj je torej stavek, ki vnese formulo, ki vsebuje narekovaje:

Obseg("A13").Formula = "=SUM(A1:A12)&"" Stores"""

Mimogrede, lahko dostopate do lastnosti Formula celice, tudi če celica nima formule. Če celica nima formule, vrne lastnost Formula enako kot njena lastnost Value.

Če želite vedeti, ali ima celica formulo, uporabite lastnost HasFormula.

Zavedajte se, da VBA "govori" ameriško angleško. To pomeni, da morate za vstavljanje formule v celico uporabiti sintakso ZDA. Če uporabljate neangleško različico Excela, preberite lastnost FormulaLocal v sistemu pomoči.

Excel VBA: Lastnost NumberFormat

Lastnost NumberFormat predstavlja obliko števila (izraženo kot besedilni niz) predmeta Range. To je lastnost branja in pisanja, tako da lahko vaša koda VBA bodisi pregleda obliko številk ali jo spremeni. Naslednji stavek spremeni obliko števila stolpca A v odstotek z dvema decimalnima mestoma:

Stolpci("A:A").NumberFormat = "0,00%"

Sledite tem korakom, če si želite ogledati seznam drugih formatov številk (še bolje, med tem vklopite snemalnik makrov):

Aktivirajte delovni list.

Pritisnite Ctrl+1 za dostop do pogovornega okna Oblikovanje celic.

Kliknite zavihek Številka.

Izberite kategorijo po meri, da si ogledate in uporabite nekaj dodatnih nizov zapisa številk.


Kako preprečiti, da Microsoft Word odpira datoteke v načinu samo za branje v sistemu Windows

Kako preprečiti, da Microsoft Word odpira datoteke v načinu samo za branje v sistemu Windows

Kako preprečiti, da Microsoft Word odpira datoteke v načinu samo za branje v sistemu Windows Microsoft Word odpira datoteke v načinu samo za branje, zaradi česar jih je nemogoče urejati? Ne skrbite, metode so spodaj

Kako popraviti nepravilno tiskanje dokumentov Microsoft Word

Kako popraviti nepravilno tiskanje dokumentov Microsoft Word

Kako odpraviti napake pri tiskanju nepravilnih dokumentov Microsoft Word Napake pri tiskanju dokumentov Word s spremenjeno pisavo, neurejenimi odstavki, manjkajočim besedilom ali izgubljeno vsebino so precej pogoste. Vendar pa ne

Izbrišite risbe s peresom in označevalnikom na diapozitivih PowerPoint

Izbrišite risbe s peresom in označevalnikom na diapozitivih PowerPoint

Če ste med predstavitvijo uporabili pero ali označevalnik za risanje po diapozitivih PowerPoint, lahko risbe shranite za naslednjo predstavitev ali jih izbrišete, tako da boste naslednjič, ko ga pokažete, začeli s čistimi PowerPointovimi diapozitivi. Sledite tem navodilom za brisanje risb s peresom in označevalnikom: Brisanje črt ena na […]

Vsebina knjižnice slogov v SharePointu 2010

Vsebina knjižnice slogov v SharePointu 2010

Knjižnica slogov vsebuje datoteke CSS, datoteke Extensible Stylesheet Language (XSL) in slike, ki jih uporabljajo vnaprej določene glavne strani, postavitve strani in kontrolniki v SharePointu 2010. Če želite poiskati datoteke CSS v knjižnici slogov na založniškem mestu: Izberite Dejanja mesta→ Pogled Vsa vsebina spletnega mesta. Prikaže se vsebina spletnega mesta. Knjižnica Style se nahaja v […]

Oblikujte številke v tisoče in milijone v poročilih Excel

Oblikujte številke v tisoče in milijone v poročilih Excel

Ne preobremenjujte občinstva z ogromnimi številkami. V Microsoft Excelu lahko izboljšate berljivost svojih nadzornih plošč in poročil tako, da oblikujete svoje številke tako, da se prikažejo v tisočih ali milijonih.

Kako deliti in spremljati SharePointova spletna mesta

Kako deliti in spremljati SharePointova spletna mesta

Naučite se uporabljati SharePointova orodja za socialno mreženje, ki posameznikom in skupinam omogočajo komunikacijo, sodelovanje, skupno rabo in povezovanje.

Kako pretvoriti datume v julijanske oblike v Excelu

Kako pretvoriti datume v julijanske oblike v Excelu

Julijanski datumi se v proizvodnih okoljih pogosto uporabljajo kot časovni žig in hitra referenca za številko serije. Ta vrsta datumskega kodiranja omogoča trgovcem na drobno, potrošnikom in servisnim agentom, da ugotovijo, kdaj je bil izdelek izdelan in s tem starost izdelka. Julijanski datumi se uporabljajo tudi v programiranju, vojski in astronomiji. Drugačen […]

Kako ustvariti spletno aplikacijo Access

Kako ustvariti spletno aplikacijo Access

Spletno aplikacijo lahko ustvarite v Accessu 2016. Kaj je torej spletna aplikacija? No, splet pomeni, da je na spletu, aplikacija pa je le okrajšava za »aplikacijo«. Spletna aplikacija po meri je spletna aplikacija baze podatkov, do katere dostopate iz oblaka z uporabo brskalnika. Spletno aplikacijo gradite in vzdržujete v namizni različici […]

Vrstica za hitri zagon v SharePointu 2010

Vrstica za hitri zagon v SharePointu 2010

Večina strani v SharePointu 2010 prikaže seznam navigacijskih povezav v vrstici za hitri zagon na levi strani strani. Vrstica za hitri zagon prikazuje povezave do predstavljene vsebine spletnega mesta, kot so seznami, knjižnice, spletna mesta in strani za objavljanje. Vrstica za hitri zagon vključuje dve zelo pomembni povezavi: Povezava do vse vsebine spletnega mesta: […]

Kaj pomenijo sporočila o napakah reševalca v Excelu?

Kaj pomenijo sporočila o napakah reševalca v Excelu?

Pri preprostih težavah reševalec v Excelu običajno hitro najde optimalne vrednosti spremenljivke reševalca za ciljno funkcijo. Toda v nekaterih primerih ima Solver težave pri iskanju vrednosti spremenljivke Solver, ki optimizirajo ciljno funkcijo. V teh primerih Solver običajno prikaže sporočilo ali sporočilo o napaki, ki opisuje ali razpravlja o težavi, ki […]