Wtorki z VBA — kurs dla początkujących
Tym wpisem rozpoczynam, krótki kurs wprowadzający do korzystania z VBA w Excelu, którego kolejne części będą pojawiały się w każdy wtorek. Dzisiaj będzie prosto i trochę nudno, czyli podstawowe informacje o edytorze VBA.
Zanim zaczniesz programować pamiętaj:
- Kod źródłowy VBA umieszcza się zwykle w modułach. Moduły są przechowywane i zapisywane razem z skoroszytem Excela, do którego zostały dołączone.
- Wewnątrz każdego modułu znajdują się procedury lub funkcje, czyli uporządkowane fragmenty kodu realizujące jakieś zadanie. Funkcja, w przeciwieństwie do procedury, po zakończeniu zawsze zwraca wartość lub tablicę, i dlatego można ją wywołać w Excelu jak zwykłą komórkę.
Edytor VBA
Aby uruchomić środowisko VBA w Excelu możesz albo nacisnąć ALT+F11 lub z menu Narzędzia wybrać opcje Makro, a następnie Edytor Visual Basic. Nie ma specjalnego sensu dokładnego opisywania edytora. Dla początkującego użytkownika ważne są dwa okna -- Eksploratora Projektu oraz Kodu. Pierwszy znajduje się po lewej stronie, a drugi to to duże okno na środku.
Na początek zajmiemy się oknem Eksplorator Projektu(lewe górne okno). Wyświetlane są tam w postaci drzewa:
- Obiekty Excela -– wszystkie otwarte skoroszyty lub szablony (pogrubione), zawierające w sobie arkusze oraz obiekt ThisWorkbook, reprezentujący cały skoroszyt.
- Moduły (Module) – gdzie znajdują się moduły, w których będziemy pisali programy.
- Formularze, Klasy – którymi nie będziemy się na razie zajmowali.
Dla początkującego użytkownika Eksplorator Kodu ma właściwie jedno zastosowanie, pozwala się zorientować do którego skoroszytu przynależy dany moduł z kodem źródłowym. Istotniejszym jest okno Kodu (czasem nazywane Module), które zawiera kod źródłowy VBA.
Operacje na modułach/klasach
Aby utworzyć moduł z menu Insert wybrać opcje Module.
Aby usunąć moduł w oknie Eksploratora Projektu zaznaczyć moduł a następnie z menu File wybrać Remove xxx gdzie xxx oznacza nazwę zaznaczonego modułu. (Przed usunięciem zostaniesz zapytany czy wyeksportować moduł).
Każdy obiekt projektu może być wyeksportowany jako osobny plik lub zaimportowany. Są to pliki z rozszerzeniami.cls lub .bas (moduły), które są w rzeczywistości zwykłymi plikami tekstowymi.
Aby zmienić nazwę modułu klikamy na dany moduł, a następnie w oknie właściwości (Properties) znajdujemy własność (name), którą dowolnie zmieniamy.
Zawartość modułu
W module można przechowywać programy, procedury, funkcje, procedury właściwości i deklaracje. Pojedynczy moduł VBA może przechowywać dowolną liczbę procedur i/lub funkcji. Sposób organizacji modułu/modułów jest całkowicie zależny od programisty. Nawigację po oknie ułatwia rozwijana lista w prawym górnym narożniku okna, dzięki której możesz szybko przenieść się do właściwej procedury lub obszaru deklaracji. Warto też korzystać z przycisków w lewym dolnym bloku okna. Pierwszy z nich, Procedure View wyświetla tylko wskazaną procedurę, a drugi -- Full Module View zawartość całego modułu.
Wprowadzanie kodu źródłowego języka VBA
VBA umożliwa pisanie programów tradycyjnie, czyli poprzez ręczne wprowadzanie kodu, lub poprzez rejestrowanie makr. Za tydzień zajmiemy się pisaniem prostych programów oraz if-em. Na dziś to tyle.
Przydatne informacje koncowe
- Ctrl+Z cofa ostatnią operację
- Aby uruchomić dowolną procedurę stajemy na niej kursorem i naciskamy F5.
- Aby móc pisać kod źródłowy w VBA w arkuszu kalkulacyjnym nie może być aktywny kursor wewnątrz komórki

