„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 .
Krótka odpowiedź
Opublikuj swój skrypt jako dodatek. Pamiętaj, że możesz ustawić go jako publiczny, niepubliczny lub prywatny, udostępniany Grupie Google.
Wyjaśnienie
Galeria skryptów została zastąpiona dodatkami, które zostały dodane w 2014 roku.
Aby opublikować dodatek, należy uiścić opłatę w wysokości 5 dolarów, aby móc opublikować dodatek w Chrome Web Store. Jeśli udostępnisz ten dodatek publicznie, powinien zostać sprawdzony przez Google przed udostępnieniem go publicznie, ale jeśli ustawisz go jako prywatny, ograniczony do grupy Google, będzie on dostępny po kilku minutach.
Alternatywą do opublikowania dodatku jest skorzystanie z funkcji testowania dodatku, ale ma to pewne ograniczenia, takie jak to, że niemożliwe jest przetestowanie wyzwalaczy, które w zależności od skryptu mogą być znaczącym ograniczeniem lub nie.
Korzystanie z dodatku jest lepsze niż korzystanie z biblioteki, ponieważ biblioteki mogą spowolnić arkusz kalkulacyjny, ale szczególnie dlatego, że z punktu widzenia użytkownika końcowego łatwiej jest używać add i używać go niż dodawać projekt skryptowy, dodać kod wymagany do wywołania biblioteki i dodania samej biblioteki.
Zaletą dla twórcy dodatku może być fakt, że użytkownicy dodatku nie będą mogli wyświetlić kodu dodatku z samego dodatku.
Z drugiej strony wymaga niektórych obrazów o określonych wymaganiach dotyczących formatu i wielkości, które można by uznać za zbyt skomplikowane w niektórych przypadkach użycia, i moglibyśmy w końcu rozważyć wykonanie kopii / wklejenia naszego skryptu lub wykonanie kopii arkusza kalkulacyjnego (dokument / formularz / prezentacja) jest prostym rozwiązaniem dla tych przypadków użycia.
Bibliografia
źródło
Powinieneś wypróbować Google Clasp, o którym mowa
Nie próbowałem, ale wygląda na to, że istnieją polecenia do pobierania kodu skryptu projektu, tworzenia i aktualizacji:
źródło
W połowie drogi jest pobranie plików ze swojego projektu.
Rozwiązanie nr 1
Znalazłem narzędzie do osiągnięcia tego:
http://googleappsscriptexport.trototype.com/ autor: kerem tiryaki
Niekorzyść
GoogleAppsScriptExporterForAll ma teraz dostęp do Twojego konta Google (musisz je usunąć ręcznie)
Rozwiązanie nr 2
Używam również tego dodatku do integracji skryptów Git-Hub i Google Sheets: https://chrome.google.com/webstore/detail/google-apps-script-github/lfjcgcmkmjjlieihflfhjopckgpelofo
Po zainstalowaniu tego dodatku musisz:
Niekorzyść
Użytkownik nadal musi otworzyć edytor skryptów i skopiować kod.
Zalety
Następne kroki
Kolejne kroki dla mnie to:
*.js
pliki w plik jednowierszowy. Pomyślnie wykorzystano https://jscompress.com/ =)źródło