VBA objekti

VBA pomoću objekata kontroliše ponašanje Excel-a, pa ako želite da ovladate ovim programskim jezikom i iskoristite ga na najbolji način potrebno je da se dobro upoznate sa objektima i kolekcijama, kao i sa njihovim svojstvima i metodama. U ovom tekstu ću vas upoznati sa najčešće korišćenim Excel objektima: Application, Workbooks, Worksheets, Cells… U nekim narednim tekstovima detaljnije ćemo se baviti svakim od njih.

Najviši po hijerarhiji je Application objekat. On poseduje mnoštvo svojstava i metoda, ali najčešće ćemo pristupati njegovim podređenim objektima. Oni su hijerarhijski uređeni, pa navođenjem zadatog redosleda pristupamo podređenim objektima, njihovim svojstvima i metodama. To postižemo tako što nadređene i podređene entitete razdvajamo tačkama. Na primer, ako u programu ukucamo reč Application opcija za automatsko kompletiranje sintakse ponudiće nam podređene objekte, svojstva ili metode koji mogu da se unesu.

Ako izaberemo ActiveSheet naznačavamo da želimo da manipulišemo aktivnim radnim listom. Ukoliko bismo dalje iskoristili objekat Cells i svojstvo Value mogli bi da upišemo željenu vrednost u ćeliju A1.

Application.ActiveSheet.Cells(1, 1).Value = 10

Ovo smo mogli da uradimo i bez navođenja svojstva Value:

Application.ActiveSheet.Cells(1, 1)= 10

Često je moguće na nekoliko načina obaviti željeni zadatak, a koji ćete od njih da iskoristite zavisi od ličnog izbora!

Workbooks i Worksheets su objekti koji se koriste za pristupanje Excel dokumentima ili radnim listovima. Na primer, ako u prvom radnom listu želimo da selektujemo opseg ćelija od A1 do B4 napisali bismo izraz:

Application.Worksheets(1).Range(„A1:B4“).Select

Mogli smo da napišemo i samo:

Worksheets(1).Range(„A1:B4“).Select

Ili

ActiveSheet.Range(„A1:B4“).Select

Objektima možemo da pristupimo i kao podređenim instancama objekta VBAProject pa smo, u prethodnom slučaju, mogli da napišemo i:

VBAProject.Sheet1.Cells(1, 2) = 10

Ovim postupkom bismo uneli vrednost 10 u ćeliju A2.

Kada se detaljno upoznate sa Excel objektima moći ćete da kreirate dodatne funkcionalnosti i automatizujete svakodnevni rad.