przez:
admin
czytany 25870 razy.
Visual Basic for Applications to język
programowania, dołączony do wielu aplikacji. W chwili obecnej wspierają go:
Cały pakiet MS Office (tzn. Word, Excel, Acces, PowerPoint, Outlook, Project,
Binder), AutoCAD (od wersji 14.01), CorelDraw oraz Corel PhotoPaint, Intellicad
i Visio. (jeżeli cos pominąłem, proszę o uzupełnienie). W tych różniących się
aplikacjach identyczny jest interface języka (no, może poza Accesem) identyczna
jest składnia, takie same słowa kluczowe i instrukcje.
Różnica polega tylko na różnych obiektach i ich metodach oraz właściwościach
związanych z aplikacja macierzysta. Ale zaraz, zaraz, co to są właściwie
obiekty, właściwości i metody?
Przez obiekt w tym ujęciu będziemy rozumieć dowolny element składowy aplikacji
(np. linie, okręgi, bloki w rysunku AutoCADa, zakres komórek w Excelu), także
sam otwarty i plik w aplikacji (np. ActiveWorkbook w Excelu, ThisDrawing w
AutoCADzie), oraz inne elementy (np. Worksheet czyli Arkusz w Excelu,
ModelSpace czy PaperSpace w AutoCADzie). Oprócz tego obiektem są takie elementy
jak paski narzędzi, a także - co chyba najważniejsze dla elastyczności
programowania w VBA - sama aplikacja macierzysta, a także inne aplikacje,
wspierające VBA i zainstalowane w systemie.
To oczywiście nie wyczerpuje listy obiektów VBA, a
stanowi raczej pewne przybliżenie pojęcia. No, dobra. A co to są właściwości i
metody? Właściwość to prostu cecha obiektu. Może ona określać np. jego wielkość
kolor, położenie na ekranie, jego stan, tzn. czy jest on dostępny czy widoczny
dla użytkownika. No a co to jest metoda? Metoda to funkcja zmieniająca
właściwości obiektu. Proste, nie?
Najczęściej obiekty są pogrupowane w tak zwane kolekcje czyli zbiory.
Przykładem może być kolekcja Workbooks w Excelu, reprezentującą wszystkie
otwarte skoroszyty, albo Blocks w AutoCADzie, reprezentującą definicje bloków.
W ujęciu programistycznym kolekcje także są obiektami, maja swoje metody (np.
Add (Remove) - dodawanie nowego (usuwanie istniejącego) elementu, Item(i) -
zwracającą element tej kolekcji, posiadający numer i) oraz właściwości (np.
Count - liczbę elementów w kolekcji).
Ponieważ wielką, zasadniczą zaletą Visual Basic dla
aplikacji jest możliwość tworzenia w banalny wręcz sposób własnego interfejsu
użytkownika (tzn. formularze wraz z polami tekstowymi, przyciskami, listami,
polami wyboru itp.) należy także zauważyć, że elementy tego interfejsu także
są obiektami i są pogrupowane w kolekcje. Dysponują także swymi metodami i
właściwościami.
Obiekty wraz ze swymi metodami i właściwościami to
bardzo wygodne i efektywne w użyciu twory, umożliwiające w prosty (no, w miarę
prosty) sposób projektowanie aplikacji.
Po tym - mam nadzieję - zrozumiałym wstępie pora na krok następny.
Edytor VBA.
W większości aplikacji skrótem klawiaturowym,
uruchamiającym edytor VBA jest ALT-F11. Inna metodą jest wybranie z menu
(najczęściej Tools - Narzędzia) odpowiedniego polecenia.
W AutoCADzie można także uruchamiać edytor VBA poleceniem VBAIDE.
Po uruchomieniu edytora pojawi się jego okno, w zasadzie identyczne we
wszystkich aplikacjach (patrz rysunek).
Na powyższym rysunku przedstawione są elementy składowe tego okna:
1. Paski narzędzi
2. Eksplorator projektu.
Dzięki temu okienku widać otwarty projekt, czyli zbiór elementów składających
się na nasza aplikacje. W przypadku Excela plik projektu to po prostu otwarty
plik *.xls, natomiast projekty VBA dla AutoCADa i Intellicada przechowywane są
w osobnych plikach (odpowiednio *.dvb i *.vbi). Projekty składają się z
modułów, czyli takich okienek z wpisanym kodem. Standardowo wszystkie aplikacje
mają możliwość wstawania następujących rodzajów modułów:
- moduł kodu źródłowego - moduł, w którym można umieścić tylko kod.
- moduł formularza - czyli projekt formularza wraz z kodem obsługującym
operacje który użytkownik może dokonać z formularzem i jego elementami
składowymi. (np. wciśnięcie przycisku, zmiana zawartości pola tekstowego,
zamkniecie formularza.) Procedury uruchamiane w wyniku takiej akcji użytkownika
nazywamy procedurami zdarzeniowymi.
- moduły klas - to takie moduły w których użytkownik może definiować
własne obiekty z ich właściwościami, metodami i zdarzeniami.
- inne moduły, widoczne w zależności od aplikacji macierzystej. W
przypadku Excela widoczne są ThisWorkbook, reprezentujący otwarty skoroszyt
Excela oraz Arkusze (może ich być kilka) - reprezentujące arkusze w otwartym
skoroszycie. W przypadku AutoCADa jest tylko jeden moduł - ThisDrawing,
reprezentujący otwarty rysunek.
3. Właściwości.
W tym okienku pojawiają się właściwości zaznaczonych elementów. (np. nazwa
projektowanego formularza, napis na zaznaczonym przycisku, a także nazwa
projektu VBA).
4. Okno kodu/ formularza.
W tym oknie wpisujemy kod programu, czy funkcje i procedury, będące
elementarnymi cegiełkami programu. Jeżeli projektujemy formularz, to oprócz
wpisywania kodu można także tworzyć formularz przy użyciu palety Toolbox.
5. Paleta Toolbox (Przybornik) - stąd pobiera się elementy składowe formularza
(etykiety, przyciski, pola tekstowe itp.). Elementy te nazywamy elementami
sterującymi lub kontrolkami.
To tyle na początek. W następnej lekcji - pierwszy program.
wstecz