„Rozwiązanie biblioteczne” jest w rzeczywistości najlepszym wyborem. To nie jest tak skomplikowane, jak się wydaje, ale zajmuje trochę jednorazowej pracy.
Najpierw utwórz skrypt w jednym arkuszu kalkulacyjnym (nazwijmy go głównym arkuszem kalkulacyjnym).
Zapisz wersję skryptu, klikając Plik → Zarządzaj wersjami w edytorze skryptów i nadaj swojej wersji nazwę:
Zamknij to okno dialogowe i przejdź do Plik → Właściwości projektu . Znajdź klucz projektu , który jest losowo kombinacją znaków:
Skopiuj lub zanotuj klucz projektu.
Gdy utworzysz nowy arkusz kalkulacyjny i chcesz ponownie użyć skryptu, przejdź do edytora skryptów i kliknij Zasoby → Biblioteki (jeśli nie zapisałeś nowego skryptu, zostaniesz o to poproszony).
W polu Znajdź bibliotekę wklej klucz projektu z projektu głównego (1) i kliknij Wybierz (2):
Spowoduje to zapełnienie listy skryptem głównym . Nadaj mu bardziej przyjazną nazwę (3) i włącz tryb programowania (4) (pozwoli to na debugowanie biblioteki). Wybierz najnowszą wersję skryptu (5).
Teraz możesz używać funkcji z dołączonej biblioteki w nowym skrypcie. Po prostu dodaj nazwy funkcji o nazwie podanej w (3), aby jeśli zidentyfikowałeś swoją bibliotekę jako MyLibrary
, a twoja biblioteka ma funkcję myFunction
, którą chcesz wywołać, zadzwonisz MyLibrary.myFunction()
.
Aby zaktualizować bibliotekę, wystarczy to zrobić i zapisać plik. Wszystkie skrypty zależne od biblioteki zobaczą zaktualizowany kod biblioteki.
Właśnie wypróbowałem to ćwiczenie jako dowód koncepcji:
- Skonfiguruj bibliotekę z funkcją:
function myFunction() {return "Foo"}
- Uwzględnij go w innym skrypcie, identyfikując bibliotekę jako
MyLibrary
- Wywołano funkcję biblioteki za pomocą
Logger.log(MyLibrary.myFunction)
- Dziennik zostanie wyświetlony
Foo
- Edytowałem bibliotekę:
function myFunction() {return "Bar"}
- Ponownie uruchomiłem skrypt dołączania, dziennik jest teraz wyświetlany
Bar
Więc to naprawdę jest dość proste po początkowej konfiguracji. Zobacz ten folder na moim Dysku Google, by zobaczyć prawdziwy przykład.
Zobacz także dokumentację Google dla bibliotek .