| Termin | Definicja |
|---|---|
| Moduł VBA | Moduł VBA to jednostka kodu w edytorze Visual Basic for Applications, przechowująca procedury i funkcje makr. Budowa modułu VBA w projekcie programuModuł VBA jest kontenerem kodu źródłowego używanego w aplikacjach pakietu Microsoft Office, między innymi w programach Excel, Word, Access i PowerPoint. W module można umieszczać procedury typu W edytorze Visual Basic moduły standardowe są przechowywane jako osobne elementy projektu i zwykle służą do kodu, który nie jest przypisany do konkretnego arkusza, formularza ani dokumentu. Oprócz modułów standardowych projekt może zawierać moduły obiektów, takie jak moduł arkusza lub skoroszytu w Excelu, moduły formularzy użytkownika oraz moduły klas. Rozróżnienie ma znaczenie, ponieważ kod umieszczony w module arkusza może reagować na zdarzenia tego arkusza, a kod w module standardowym jest przeznaczony głównie do wielokrotnego wywoływania z różnych miejsc projektu. Procedury, funkcje i zakres działania koduKażdy moduł VBA może zawierać wiele procedur. Ich widoczność określa między innymi słowo kluczowe Moduł może również zawierać deklaracje na poziomie modułu, czyli elementy umieszczone poza konkretną procedurą. Dotyczy to na przykład stałych oraz zmiennych zachowujących wartość pomiędzy wywołaniami procedur. Zakres i czas życia zmiennej zależą od miejsca deklaracji oraz użytych słów kluczowych, dlatego błędne przeniesienie deklaracji może zmienić działanie makra. W praktyce warto rozdzielać kod odpowiedzialny za obliczenia, operacje na komórkach, obsługę formularza i komunikaty dla użytkownika, ponieważ ułatwia to analizę błędów oraz późniejszą modyfikację. Makra, zdarzenia i bezpieczeństwo projektuModuł VBA może być uruchamiany ręcznie z poziomu listy makr, przez przycisk formularza, z innej procedury albo w reakcji na zdarzenie aplikacji lub dokumentu. Samo umieszczenie kodu w module nie oznacza jednak, że zostanie on automatycznie wykonany. Uruchomienie zależy od sposobu wywołania, ustawień aplikacji oraz ewentualnych warunków zapisanych w kodzie. W Excelu procedury zdarzeniowe mogą reagować na działania takie jak otwarcie skoroszytu, zmiana wartości komórki lub aktywowanie arkusza, ale muszą znajdować się w odpowiednim module obiektu. Pliki zawierające makra są zapisywane w formatach obsługujących kod VBA, na przykład jako skoroszyt programu Excel z rozszerzeniem Diagnoza niedziałającego modułu VBAAnalizę problemu rozpoczyna się od ustalenia, czy błąd występuje podczas kompilacji, przy uruchamianiu konkretnej procedury, czy dopiero po wykonaniu określonej operacji w dokumencie. Edytor VBA udostępnia polecenie kompilacji projektu, które może wskazać błędy składni i część problemów z deklaracjami. Podczas działania makra komunikat wykonawczy może wskazać instrukcję, na której wystąpił problem. Warto wtedy sprawdzić typy zmiennych, wartości parametrów, istnienie wskazywanego arkusza lub zakresu oraz to, czy obiekt został prawidłowo utworzony i przypisany. Jeżeli procedura nie pojawia się na liście makr, przyczyną może być jej umieszczenie w module obiektu zamiast w module standardowym, użycie parametrów albo zadeklarowanie jako Warszawskie Pogotowie Komputerowe wykonuje profesjonalną naprawę laptopów, komputerów PC i podzespołów, w tym diagnostykę problemów z działaniem oprogramowania na komputerze użytkownika. Przy zgłoszeniu dotyczącym modułu VBA pomocne są opis objawu, nazwa aplikacji Office, rodzaj pliku oraz informacja, czy błąd pojawia się przy otwieraniu dokumentu, uruchamianiu makra czy wykonywaniu konkretnej operacji. |