Korisna svojstva objekata raspona za Excel VBA koje bi svi trebali znati

Objekt Range ima desetke svojstava. Možete pisati VBA programe bez prestanka sljedećih 12 mjeseci i nikada ih ne koristiti sve. Ovdje ćete dobiti kratak pregled nekih od najčešće korištenih svojstava Excel VBA raspona. Za potpune pojedinosti, obratite se sustavu pomoći u VBE. (Potražite ove dodatne resurse za pomoć s Excel VBA .)

Neka svojstva Excel VBA raspona svojstva su samo za čitanje, što znači da vaš kod može pogledati njihove vrijednosti, ali ih ne može promijeniti ("Gledaj, ali ne dirajte"). Na primjer, svaki Excel VBA objekt Range ima svojstvo Address, koje sadrži adresu raspona. Možete pristupiti ovom svojstvu samo za čitanje, ali ga ne možete promijeniti — što je savršeno logično kada razmislite o tome.

Usput, primjeri koji slijede obično su izjave, a ne potpuni postupci. Ako želite isprobati bilo što od ovoga (a trebali biste), stvorite Sub proceduru da biste to učinili. Također, mnoge od ovih VBA izjava rade ispravno samo ako je radni list aktivni list.

Excel VBA: svojstvo vrijednosti

Svojstvo Value predstavlja vrijednost sadržanu u ćeliji. To je svojstvo čitanja i pisanja, tako da vaš VBA kod može čitati ili mijenjati vrijednost.

Sljedeća izjava prikazuje okvir s porukom koji prikazuje vrijednost u ćeliji A1 na Sheet1:

Radni listovi MsgBox("Sheet1").Raspon("A1").Vrijednost

Razumljivo je da svojstvo Value možete pročitati samo za objekt raspona jedne ćelije. Na primjer, sljedeća izjava generira pogrešku:

Radni listovi MsgBox("Sheet1").Raspon("A1:C3").Vrijednost

Možete, međutim, promijeniti svojstvo Value za raspon bilo koje veličine. Sljedeća izjava unosi broj 123 u svaku ćeliju u rasponu:

Radni listovi("Sheet1").Raspon("A1:C3").Vrijednost = 123

Vrijednost je zadano svojstvo za objekt Excel VBA raspon. Drugim riječima, ako izostavite svojstvo za raspon, Excel koristi svojstvo Value. Sljedeće izjave unose vrijednost 75 u ćeliju A1 aktivnog radnog lista:

Raspon("A1").Vrijednost = 75
Raspon ("A1") = 75

Excel VBA: svojstvo teksta

Svojstvo Text vraća niz koji predstavlja tekst kako je prikazan u ćeliji — formatiranu vrijednost. Svojstvo Text je samo za čitanje. Pretpostavimo da ćelija A1 sadrži vrijednost 12,3 i da je formatirana tako da prikazuje dvije decimale i znak za dolar (12,30 USD). Sljedeća izjava prikazuje okvir s porukom koji sadrži 12,30 USD:

Radni listovi MsgBox("Sheet1").Raspon("A1").Tekst

Ali sljedeća izjava prikazuje okvir s porukom koji sadrži 12.3:

Radni listovi MsgBox("Sheet1").Raspon("A1").Vrijednost

Ako ćelija sadrži formulu, svojstvo Text vraća rezultat formule. Ako ćelija sadrži tekst, svojstvo Text i svojstvo Value uvijek vraćaju istu stvar, jer se tekst (za razliku od broja) ne može formatirati za drugačiji prikaz.

Excel VBA: svojstvo Count

Svojstvo Count vraća broj ćelija u rasponu. Broji sve ćelije, a ne samo ćelije koje nisu prazne. Count je svojstvo samo za čitanje, baš kao što biste očekivali. Sljedeća izjava pristupa svojstvu Count raspona i prikazuje rezultat (9) u okviru za poruke:

MsgBox Range("A1:C3").Broj

Excel VBA: svojstva stupca i reda

Svojstvo Column vraća broj stupca raspona jedne ćelije. Njegov pomoćnik, svojstvo Row, vraća broj retka raspona jedne ćelije. Oba su svojstva samo za čitanje. Na primjer, sljedeća izjava prikazuje 6 jer se ćelija F3 nalazi u šestom stupcu:

MsgBox Sheets("Sheet1").Raspon("F3").Stupac

Sljedeći izraz prikazuje 3 jer je ćelija F3 u trećem redu:

MsgBox Sheets("Sheet1").Raspon("F3").Red

Ako se objekt Excel VBA raspon sastoji od više od jedne ćelije, svojstvo Column vraća broj stupca prvog stupca u rasponu, a svojstvo Row vraća broj retka prvog retka u rasponu.

Nemojte brkati svojstva stupca i reda sa svojstvima stupaca i redaka. Svojstva stupca i reda vraćaju jednu vrijednost. Svojstva Columns i Rows, s druge strane, vraćaju objekt Range. Kakvu razliku čini "s".

Excel VBA: Svojstvo Adresa

Adresa, svojstvo samo za čitanje, prikazuje adresu ćelije za objekt Range kao apsolutnu referencu (znak dolara prije slova stupca i prije broja retka). Sljedeća izjava prikazuje okvir s porukom prikazan ispod:

Raspon MsgBox (ćelije(1, 1), ćelije(5, 5)).Adresa

Korisna svojstva objekata raspona za Excel VBA koje bi svi trebali znati

Ovaj okvir s porukom prikazuje svojstvo adrese raspona 5 na 5.

Excel VBA: svojstvo HasFormula

Svojstvo HasFormula (koje je samo za čitanje) vraća True ako raspon jedne ćelije sadrži formulu. Vraća False ako ćelija sadrži nešto drugo osim formule (ili je prazna). Ako se raspon sastoji od više od jedne ćelije, VBA vraća True samo ako sve ćelije u rasponu sadrže formulu ili False ako sve ćelije u rasponu nemaju formulu. Svojstvo vraća Null ako raspon sadrži mješavinu formula i neformula. Null je vrsta ničije zemlje: odgovor nije ni istinit ni netočan, a svaka ćelija u rasponu može, ali i ne mora imati formulu.

Morate biti oprezni kada radite sa svojstvima koja mogu vratiti Null. Točnije, jedini tip podataka koji se može nositi s Null je Variant.

Na primjer, pretpostavimo da ćelija A1 sadrži vrijednost, a ćelija A2 formulu. Sljedeće izjave generiraju pogrešku jer se raspon ne sastoji od svih formula ili svih neformula:

Dim FormulaTest kao Boolean
FormulaTest = Raspon("A1:A2").Ima formulu

Boolean tip podataka može rukovati samo True ili False. Null uzrokuje da se Excel žali i prikaže poruku o pogrešci. Da biste popravili ovu vrstu situacije, najbolje je osigurati da se varijabla FormulaTest deklarira kao Variant, a ne kao Boolean. Sljedeći primjer koristi VBA-ovu zgodnu funkciju TypeName (zajedno s konstrukcijom If-Then-Else) za određivanje tipa podataka varijable FormulaTest. Ako raspon sadrži mješavinu formula i neformula, okvir s porukom prikazuje Mixed! U suprotnom, prikazuje True ili False .

Pod Formule za provjeru()
  Dim FormulaTest kao varijanta
  FormulaTest = Raspon("A1:A2").Ima formulu
  Ako je TypeName(FormulaTest) = "Null" Zatim
    MsgBox "Miješano!"
  Drugo
    MsgBox FormulaTest
  Završi ako
Kraj Sub

Excel VBA: Svojstvo Font

Svojstvo može vratiti objekt. Svojstvo Font objekta Excel VBA Range još je jedan primjer tog koncepta na djelu. Svojstvo Font vraća objekt Font.

Objekt Font, kao što možete očekivati, ima mnoga dostupna svojstva. Da biste promijenili neki aspekt fonta raspona, prvo morate pristupiti objektu Font raspona, a zatim manipulirati svojstvima tog objekta. Ovo može biti zbunjujuće, ali možda će ovaj primjer pomoći.

Sljedeća izjava koristi svojstvo Font objekta Range za vraćanje objekta Font. Tada je svojstvo Bold objekta Font postavljeno na True. Na običnom engleskom, ova izjava čini da se ćelija prikazuje podebljanim slovima:

Raspon("A1").Font.Podebljano = Točno

Istina je da zapravo ne morate znati da radite s posebnim objektom Font koji je sadržan u objektu Excel VBA Range. Sve dok koristite odgovarajuću sintaksu, radi sasvim dobro. Često vam snimanje vaših radnji pomoću snimača makroa govori sve što trebate znati o pravilnoj sintaksi.

Excel VBA: Vlasništvo interijera

Evo još jednog primjera svojstva koje vraća objekt. Svojstvo Interior objekta Range vraća Interior objekt (čudno ime, ali tako se zove). Ova vrsta referenciranja objekata radi na isti način kao i svojstvo Font.

Na primjer, sljedeća izjava mijenja svojstvo Color objekta Interior sadržanog u objektu Range:

Raspon("A1").Interijer.Boja = 8421504

Drugim riječima, ova izjava mijenja pozadinu ćelije u srednje sivu. Što je to? Niste znali da je 8421504 srednje siva? Za neke uvide u prekrasan Excelov svijet boja, pogledajte obližnju bočnu traku "Primjer boja za brzo i prljavo".

Excel VBA: svojstvo formule

Svojstvo Formula predstavlja formulu u ćeliji. Ovo je svojstvo čitanja i pisanja, tako da mu možete pristupiti da biste vidjeli formulu u ćeliji ili umetnuli formulu u ćeliju. Na primjer, sljedeća izjava unosi formulu SUM u ćeliju A13:

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

Primijetite da je formula tekstualni niz i da je zatvorena u navodnicima. Također primijetite da formula počinje znakom jednakosti, kao i sve formule.

Ako sama formula sadrži navodnike, stvari postaju malo zeznute. Recimo da želite umetnuti ovu formulu pomoću VBA:

=SUM(A1:A12)&"Prodavaonice"

Ova formula prikazuje vrijednost iza koje slijedi riječ Stores . Da biste ovu formulu učinili prihvatljivom, trebate zamijeniti svaki navodnik u formuli s dva navodnika. Inače, VBA se zbuni i tvrdi da postoji sintaktička pogreška (jer postoji!). Dakle, ovdje je izjava koja ulazi u formulu koja sadrži navodnike:

Raspon("A13").Formula = "=SUM(A1:A12)&"" Pohranjuje"""

Usput, možete pristupiti svojstvu Formula ćelije čak i ako ćelija nema formulu. Ako ćelija nema formulu, svojstvo Formula vraća isto kao i svojstvo Value.

Ako trebate znati ima li ćelija formulu, upotrijebite svojstvo HasFormula.

Imajte na umu da VBA "govori" američki engleski. To znači da za stavljanje formule u ćeliju morate koristiti američku sintaksu. Ako koristite verziju Excela koja nije na engleskom, pročitajte svojstvo FormulaLocal u sustavu pomoći.

Excel VBA: svojstvo NumberFormat

Svojstvo NumberFormat predstavlja format broja (izražen kao tekstualni niz) objekta Range. Ovo je svojstvo čitanja i pisanja, tako da vaš VBA kod može ili ispitati format broja ili ga promijeniti. Sljedeća izjava mijenja format broja stupca A u postotak s dva decimalna mjesta:

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

Slijedite ove korake da biste vidjeli popis drugih formata brojeva (još bolje, uključite snimač makronaredbi dok to radite):

Aktivirajte radni list.

Pritisnite Ctrl+1 za pristup dijaloškom okviru Oblikovanje ćelija.

Kliknite karticu Broj.

Odaberite prilagođenu kategoriju za prikaz i primjenu nekih dodatnih nizova formata brojeva.

Leave a Comment

Kako postaviti upit u bazu podataka MS Access 2019

Kako postaviti upit u bazu podataka MS Access 2019

Naučite kako postaviti upite u Access bazi podataka uz jednostavne korake i savjete za učinkovito filtriranje i sortiranje podataka.

Osnove tabulatora u programu Word 2013

Osnove tabulatora u programu Word 2013

Tabulatori su oznake položaja u odlomku programa Word 2013 koje određuju kamo će se točka umetanja pomaknuti kada pritisnete tipku Tab. Otkrijte kako prilagoditi tabulatore i optimizirati svoj rad u Wordu.

Kako odabrati i poništiti odabir blokova teksta u Wordu 2010

Kako odabrati i poništiti odabir blokova teksta u Wordu 2010

Word 2010 nudi mnoge načine označavanja i poništavanja odabira teksta. Otkrijte kako koristiti tipkovnicu i miš za odabir blokova. Učinite svoj rad učinkovitijim!

Kako uvući pasus u Wordu 2013

Kako uvući pasus u Wordu 2013

Naučite kako pravilno postaviti uvlaku za odlomak u Wordu 2013 kako biste poboljšali izgled svog dokumenta.

Kako otvoriti i zatvoriti PowerPoint 2019 prezentacije

Kako otvoriti i zatvoriti PowerPoint 2019 prezentacije

Naučite kako jednostavno otvoriti i zatvoriti svoje Microsoft PowerPoint 2019 prezentacije s našim detaljnim vodičem. Pronađite korisne savjete i trikove!

Kako crtati jednostavne objekte u PowerPointu 2013

Kako crtati jednostavne objekte u PowerPointu 2013

Saznajte kako crtati jednostavne objekte u PowerPoint 2013 uz ove korisne upute. Uključuje crtanje linija, pravokutnika, krugova i više.

Kako filtrirati podatke u programu Access 2016

Kako filtrirati podatke u programu Access 2016

U ovom vodiču vam pokazujemo kako koristiti alat za filtriranje u programu Access 2016 kako biste lako prikazali zapise koji dijele zajedničke vrijednosti. Saznajte više o filtriranju podataka.

Formule za zaokruživanje brojeva u Excelu

Formule za zaokruživanje brojeva u Excelu

Saznajte kako koristiti Excelove funkcije zaokruživanja za prikaz čistih, okruglih brojeva, što može poboljšati čitljivost vaših izvješća.

Kako dizajnirati različita zaglavlja i podnožja za različite stranice u programu Word 2013

Kako dizajnirati različita zaglavlja i podnožja za različite stranice u programu Word 2013

Zaglavlje ili podnožje koje postavite isto je za svaku stranicu u vašem Word 2013 dokumentu. Otkrijte kako koristiti različita zaglavlja za parne i neparne stranice.

Excel izvješća: prilagođeno oblikovanje brojeva

Excel izvješća: prilagođeno oblikovanje brojeva

Poboljšajte čitljivost svojih Excel izvješća koristeći prilagođeno oblikovanje brojeva. U ovom članku naučite kako se to radi i koja su najbolja rješenja.