Jak uruchamiać kod VBA w aplikacjach pakietu Microsoft 365
Aby uruchomić kod VBA w usłudze Microsoft 365, otwórz obsługiwaną aplikację komputerową, wyświetl kartę Deweloper, otwórz Edytor Visual Basic, dodaj kod do odpowiedniego projektu i uruchom jego procedurę. Poniższe kroki dotyczą programu Word dla systemu Windows; Excel, PowerPoint i klasyczny Outlook korzystają z podobnych narzędzi, ale kod musi być napisany specjalnie dla aplikacji, która będzie go uruchamiać. Język VBA nie działa w pakiecie Office dla sieci Web.
Użyj obsługiwanej aplikacji komputerowej
Pracuj w zainstalowanej wersji Worda, Excela lub PowerPointa na komputerze. Klasyczny Outlook również obsługuje VBA, natomiast karta Deweloper jest niedostępna w nowym Outlooku dla systemu Windows. Wstążka i projekt VBA mogą się różnić w zależności od aplikacji, więc makro Worda edytujące akapity nie będzie automatycznie działać w skoroszycie Excela.
Wersje przeglądarkowe mają istotne ograniczenia. Excel dla sieci Web umożliwia otwieranie i edytowanie skoroszytów zawierających makra, ale nie pozwala na tworzenie, uruchamianie ani edytowanie makr VBA. Word dla sieci Web również nie umożliwia uruchomienia makra; wystarczy uruchomić je w programie Word na komputerze, zapisać dokument, a następnie wyświetlić wynik w przeglądarce. Zapoznaj się ze wskazówkami firmy Microsoft dotyczącymi makr VBA w programie Excel dla sieci Web oraz tworzenia i uruchamiania makr w programie Word .
Uruchom kod VBA w programie Word dla systemu Windows
Pokaż kartę Deweloper. W programie Word wybierz Plik > Opcje > Dostosuj wstążkę . Na liście po prawej stronie, w sekcji Karty główne , zaznacz opcję Deweloper , a następnie kliknij przycisk OK . To ustawienie jest zapisywane dla programu Word; w razie potrzeby powtórz je osobno w innej aplikacji pakietu Office. Instrukcje firmy Microsoft dotyczące wyświetlania karty Deweloper zawierają ścieżki dla systemów Windows i Mac.
Aby wyświetlić kartę w programie Word, z listy Dostosuj wstążkę wybierz pozycję Deweloper.
Otwórz edytor VBA. Wróć do dokumentu i wybierz Deweloper > Visual Basic . Edytor Visual Basic otworzy się w osobnym oknie. Zawiera projekt dla otwartego dokumentu lub szablonu, a kod jest uruchamiany za pośrednictwem aplikacji pakietu Office, do której należy ten projekt.
Polecenie Visual Basic otwiera edytor bieżącego projektu Word.
Dodaj standardowy moduł i wklej kod. W edytorze wybierz Wstaw > Moduł . Kliknij nowy panel kodu i wklej całą procedurę. Małe makro testowe wygląda tak:
Sub HelloWord()
MsgBox "Hello, Word!"
End Sub
Zachowaj wiersze Subi End Sub; definiują one procedurę, którą może uruchomić pakiet Office. Proste makro, które planujesz uruchomić z listy Makra, powinno być publiczne Subw module standardowym i nie mieć wymaganych argumentów. Część dostarczonego kodu powinna znajdować się w module arkusza kalkulacyjnego, skoroszytu, dokumentu lub klasy, więc postępuj zgodnie z jego instrukcjami, zamiast przenosić go bezmyślnie.
Wybierz Moduł, aby utworzyć standardowy panel kodu dla samodzielnego makra.
Uruchom procedurę. Kliknij wewnątrz procedury i wybierz zielony trójkąt „Uruchom” lub naciśnij klawisz F5 . Możesz również wrócić do programu Word i wybrać kolejno Deweloper > Makra , zaznaczyć nazwę makra i kliknąć „Uruchom” . W powyższym przykładzie program Word wyświetla okno komunikatu. Makro edytujące dokument może zamiast tego zmienić tekst, formatowanie lub inną zawartość, dlatego zapisz kopię przed uruchomieniem kodu, którego wcześniej nie używałeś.
Uruchom procedurę z edytora po umieszczeniu kursora w jego wnętrzu.
Zapisz kod z plikiem
Jeśli chcesz, aby makro pozostało w dokumencie lub skoroszycie, zapisz je w formacie z włączoną obsługą makr: .docm w przypadku programu Word, .xlsm w przypadku programu Excel lub .pptm w przypadku programu PowerPoint. Standardowe odpowiedniki .docx, .xlsx i .pptx nie przechowują osadzonego kodu VBA. Z listy formatów „Zapisz jako” wybierz typ z włączoną obsługą makr i zachowaj rozszerzenie pliku. Przewodnik po rozszerzeniach plików pakietu Office firmy Microsoft zawiera listę tych formatów. W programie Word makro zapisane w formacie Normal.dotm można udostępnić w nowych dokumentach; w przeciwnym razie należy je zachować w pliku lub szablonie, do którego należy.
Ostrożnie obchodź się z ostrzeżeniami dotyczącymi makr
Uruchamiaj tylko kod, który sam napisałeś lub możesz przejrzeć i któremu ufasz. Makro VBA może modyfikować pliki i zawartość pakietu Office, a usługa Microsoft 365 blokuje makra z wielu plików pobranych z internetu. Nie przełączaj Centrum zaufania na opcję Włącz wszystkie makra tylko po to, aby uruchomić program. Jeśli pojawi się ostrzeżenie, sprawdź kod i pochodzenie pliku; na zarządzanym komputerze służbowym zapytaj administratora, czy zasady go blokują. Aktualne wytyczne firmy Microsoft dotyczące makr internetowych wyjaśniają opcje blokowania i zaufanego pliku.
Jeśli makro nie zostanie uruchomione
Brakuje karty Deweloper lub Visual Basic: sprawdź, czy jesteś w aplikacji komputerowej, a następnie włącz opcję Deweloper w ustawieniach wstążki tej aplikacji. Nowy Outlook dla systemu Windows nie ma tej karty.
Makro nie znajduje się na liście makr: sprawdź, czy kod jest obiektem wykonywalnym Subw odpowiednim projekcie. Obsługę zdarzeń i procedury wymagające argumentów uruchamia się inaczej.
Blokada jest blokowana przez pasek bezpieczeństwa: zatrzymaj i sprawdź źródło. Pobrany plik może być zablokowany lub Twoja organizacja mogła wyłączyć VBA.
Używasz komputera Mac: w programie Word przejdź do Word > Preferencje > Wstążka i pasek narzędzi , włącz opcję Deweloper w kartach głównych i wybierz Zapisz. Edytor VBA jest również dostępny w menu Narzędzia > Makro > Edytor Visual Basic w pakiecie Office dla komputerów Mac; nazwy menu mogą się nieznacznie różnić w zależności od aplikacji.
Gdy kod znajdzie się w odpowiedniej aplikacji desktopowej i projekcie, jego uruchomienie zazwyczaj sprowadza się do wyboru procedury. Jeśli wystąpi błąd, skorzystaj z wyróżnionego wiersza i komunikatu, aby określić, czy kod, jego uprawnienia lub założenia dotyczące otwartego pliku wymagają uwagi.