Przekonwertuj makra VBA na Apps Script

Zanim zaczniesz

Przed konwersją plików warto zaktualizować niezgodne interfejsy API w kodzie VBA. W przypadku plików ze stanem Dokładnie obsługiwane możesz przejść do kroku 1. Konwertuj pliki.

Modyfikowanie niezgodnych interfejsów VBA

W przypadku plików ze stanem Obsługiwane z obejściem lub Wymaga dalszego zbadania możesz zastosować obejścia i poprawki po przekonwertowaniu w Apps Script, ale przed przekonwertowaniem plików zalecamy zmodyfikowanie kodu VBA, z którym się dobrze zapoznasz.

W przypadku każdego interfejsu API oznaczonego w raporcie o zgodności jako Obsługiwany z objazdem lub Wymaga zbadania zalecamy:

  • Jeśli funkcja wykonywana przez interfejs API nie jest niezbędna do prawidłowego działania makra VBA, usuń ją z kodu VBA. Jeśli tak, zmień kod, aby zaimplementować podobne działanie za pomocą obsługiwanych interfejsów VBA API.
  • Jeśli nie możesz przejść na obsługiwane interfejsy VBA, w przypadku interfejsów z tego typu o stanie Obsługiwane z objazdem pozostaw je w obecnej postaci. Po przekonwertowaniu na Apps Script w komentarzach do przekonwertowanego kodu Apps Script znajdziesz zalecany sposób obejścia tego interfejsu API.
  • Jeśli problem wynika z niewdrożonego konstruktu językowego, przepisz kod, aby uniknąć używania takich konstruktów.
  • W przypadku interfejsów API o stanie Wymaga sprawdzenia sprawdź, czy Twój kod zawiera któryś z tych interfejsów API:

    • Adodb.connection
    • CreateObject: ten interfejs API jest często używany do łączenia się z oprogramowaniem do planowania zasobów baz danych i firmy.
    • Shell.execute
    • OleObject

    Jeśli tak, odradzamy konwertowanie plików, do których należą te interfejsy API, i sprawdzenie innych opcji. Te interfejsy API zwykle wykonują kluczowe operacje dla makr, takie jak połączenie z bazą danych lub dostęp do zasobu lokalnego, a Apps Script nie jest zwykle dobrym rozwiązaniem.

Krok 1. Przekonwertuj pliki

  1. Na komputerze otwórz Dysk Google.
  2. W panelu po prawej stronie kliknij dodatek Konwerter makr Ikona Konwertora makro. Jeśli nie widzisz panelu bocznego, w prawym dolnym rogu kliknij Pokaż panel boczny .
  3. Kliknij Dodaj pliki i foldery. Konwerter makr rozpoznaje tylko pliki Excela.
  4. Wybierz pliki lub foldery, które chcesz przekonwertować, i kliknij Wybierz. Wybierz mniej niż 2000 plików naraz.
  5. Aby zmienić lokalizację zapisywania przekonwertowanych plików, kliknij Zmień folder docelowy  i wybierz odpowiedni folder. W przeciwnym razie pliki są zapisywane w folderze Mój Dysk.
  6. Kliknij Konwertuj.
  7. Po zakończeniu konwersji kliknij Wyświetl wyniki.

Krok 2. Sprawdź przekonwertowane pliki

Uruchamianie kodu Apps Script

Po przekonwertowaniu plików przetestuj funkcje Apps Script. Przetestuj przekonwertowane pliki z użyciem danych, których zwykle używasz w plikach programu Excel. W miarę możliwości porównaj dane wyjściowe przekonwertowanych plików Arkuszy z wyjściowymi plikami Excela.

Testowanie aktywatorów

Jeśli pliki zawierają wyzwalacze takie jak onOpen(), onEdit() lub onClick(), przetestuj też te wyzwalacze. Niektóre wyzwalacze VBA nie zostaną przekonwertowane automatycznie i trzeba je zastosować w Apps Script. Zobacz artykuł Rozwiązywanie typowych problemów.

Sprawdzanie plików ReadMe

Jeśli wraz z przetworzonym plikiem został wygenerowany plik ReadMe, zapoznaj się z problemami związanymi z konwersją wymienionymi w tym pliku.

  • Jeśli problemy mogą być problematyczne w przypadkach, które nie zostały jeszcze przetestowane, zastosuj zalecane zmiany w kodzie.
  • Jeśli przetestujesz wszystkie możliwe scenariusze i wszystko działa zgodnie z oczekiwaniami, prawdopodobnie nie musisz wprowadzać żadnych zmian.

Krok 3. Napraw błędy

Jeśli podczas testowania plików wystąpią błędy, przeczytaj artykuł Poprawianie błędów w przetworzonym kodzie.

Jeśli kod działa bez błędów, ale wynik nie jest zgodny z oczekiwaniami, otwórz plik ReadMe w pliku ReadMe. Przejrzyj każdą sekcję, aby dowiedzieć się, co powoduje problem, i zastosować zalecaną poprawkę.

Po poprawieniu błędów przetestuj plik ponownie, aby mieć pewność, że wszystko działa zgodnie z oczekiwaniami.