Przekonwertuj makra VBA na Apps Script

Zanim zaczniesz

Przed przekonwertowaniem plików warto zaktualizować w kodzie VBA niezgodne interfejsy API. W przypadku plików o stanie Dokładnie obsługiwany możesz przejść do kroku 1: przekonwertuj pliki.

Modyfikowanie niezgodnych interfejsów API VBA

W przypadku plików o stanie Obsługiwane z obejściem lub Wymaga zbadania możesz zastosować obejścia i poprawki po konwersji w Apps Script, ale zalecamy, aby przed konwersją plików najpierw zmodyfikować kod VBA, który znasz.

W przypadku każdego interfejsu API oznaczonego w raporcie zgodności jako Obsługiwany z obejściem lub Wymaga sprawdzenia zalecamy wykonanie tych czynności:

  • 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 jest, zmień kod, aby zaimplementować podobne działanie za pomocą obsługiwanych interfejsów API VBA.
  • Jeśli w przypadku interfejsów API o stanie Obsługiwane z obejściem nie możesz przejść na obsługiwane interfejsy VBA API, pozostaw interfejsy VBA API bez zmian. Po przekonwertowaniu na Apps Script w komentarzach przekonwertowanego kodu Apps Script zalecane jest znane obejście tego interfejsu API.
  • Jeśli problem wynika z niezastosowanej konstrukcji językowej, zmień kod, aby uniknąć używania tych konstrukcji.
  • 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 bazami danych i oprogramowaniem do planowania zasobów przedsiębiorstwa.
    • Shell.execute
    • OleObject

    Jeśli tak, nie zalecamy konwertowania plików, do których należą te interfejsy API, i zachęcamy do zbadania innych opcji. Te interfejsy API zwykle wykonują krytyczne operacje dla makra, takie jak łączenie się z bazą danych lub uzyskiwanie dostępu do zasobu lokalnego, a Apps Script nie jest w tym przypadku dobrym rozwiązaniem.

Krok 1. Przekonwertuj pliki

  1. Na komputerze otwórz Dysk Google.
  2. W panelu bocznym po prawej stronie kliknij dodatek Macro Converter Ikona konwertera 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. Wybieraj mniej niż 2000 plików naraz.
  5. Aby zmienić miejsce zapisywania przekonwertowanych plików, kliknij Zmień folder docelowy  i wybierz odpowiedni folder. W przeciwnym razie pliki zostaną zapisane w folderze Mój dysk.
  6. Kliknij Konwertuj.
  7. Po zakończeniu konwersji kliknij Wyświetl wyniki.

Krok 2. Przetestuj przekonwertowane pliki

Uruchamianie kodu Apps Script

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

Testowanie aktywatorów

Jeśli Twoje pliki zawierają aktywatory, takie jak onOpen(), onEdit() lub onClick(), przetestuj je. Niektóre wyzwalacze VBA nie zostaną przekonwertowane automatycznie i muszą zostać przetworzone w Apps Script. Zobacz Rozwiązywanie typowych problemów.

Sprawdzanie plików ReadMe

Jeśli wraz z przekonwertowanym plikiem wygenerowano plik ReadMe, sprawdź problemy z konwersją wymienione w tym pliku.

  • Jeśli problemy mogą wystąpić w przypadkach, których nie przetestowano, zastosuj zalecane zmiany w kodzie.
  • Jeśli przetestujesz wszystkie możliwe scenariusze i wszystko będzie 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, zapoznaj się z artykułem Rozwiązywanie błędów w przekonwertowanym kodzie.

Jeśli kod działa bez błędów, ale wynik nie jest zgodny z oczekiwaniami, otwórz plik ReadMe. Przejrzyj każdą sekcję, aby ustalić przyczynę problemu i zastosować zalecane rozwiązanie.

Po naprawieniu błędów ponownie przetestuj plik, aby upewnić się, że wszystko działa zgodnie z oczekiwaniami.