Przejdź do treści

NEWSLETTERRaz w miesiącu konkrety z wdrożeń w firmach usługowych, zero spamu. Zapisz się i odbierz checklistę →

Google Apps Script

Google Apps Script to JavaScript uruchamiany na serwerach Google, który automatyzuje Arkusze, Gmaila, Dysk, Kalendarz i Formularze bez instalowania.

Inaczej: Apps ScriptPo angielsku: Google Apps Script

Filip Kostecki

Opublikowano

Apps Script pozwala zastąpić ręczne przeklejanie danych między arkuszami, mailami i plikami krótkim programem, który robi to sam, w tle albo po kliknięciu w menu. Nie kupujesz do tego osobnego narzędzia: skrypt żyje w Twoim Google Workspace, tam gdzie dane.

Jak to działa?

  1. W Arkuszach, Dokumentach albo Formularzach otwierasz menu Rozszerzenia, Apps Script. Powstaje skrypt związany z plikiem, pisany w JavaScripcie, zapisany na Dysku i uruchamiany na serwerach Google.
  2. Skrypt sięga do usług Google poleceniami, na przykład SpreadsheetApp do arkuszy, MailApp do wysyłania maili, DriveApp do plików i CalendarApp do kalendarza. Do zewnętrznych usług łączy się przez UrlFetch, czyli zwykłe zapytanie do API.
  3. Przy pierwszym uruchomieniu Google skanuje kod i prosi o zgodę na dostęp do danych. Zakresy uprawnień wynikają z kodu, także z zakomentowanego.
  4. Uruchamiasz skrypt ręcznie, z własnego menu w arkuszu albo wyzwalaczem. Wyzwalacz czasowy działa od co minutę do raz w miesiącu, inne ruszają po edycji arkusza, wysłaniu formularza albo zmianie w kalendarzu.
  5. Błędy wyzwalaczy nie pokazują się na ekranie: Google wysyła mail z podsumowaniem, a historię uruchomień znajdziesz w panelu Executions.

Przykład z praktyki

U klienta pracującego na Google Workspace skrypt w Arkuszach porządkuje i łączy dane. Skrypt tego typu zwykle czyta zakres z arkusza, układa wiersze według ustalonych reguł, łączy je z danymi z drugiego zestawienia i zapisuje wynik w osobnej zakładce. Więcej o samym pakiecie jest w haśle Google Workspace.

Kiedy ma sens, a kiedy nie?

Apps Script sprawdza się przy zadaniach wokół Arkuszy, Gmaila, Dysku i Formularzy: korespondencja seryjna z szablonu w Gmailu, pliki PDF z danych w arkuszu, pliki z formularza układane w folderach na Dysku, powiadomienia po zmianie statusu. Google publikuje gotowe wzorce takich rozwiązań z przykładowym kodem.

Przestaje wystarczać, gdy skrypt ma obsłużyć duży ruch, ciężkie obliczenia albo systemy poza Google. Wtedy zamiast skryptu w arkuszu potrzebna jest zwykła integracja systemów albo przepływ w Power Automate, jeśli firma pracuje w Microsoft 365.

Skrypty i integracje budujemy w ramach automatyzacji. Napisz, który proces w arkuszach zajmuje Wam najwięcej czasu, a po krótkiej rozmowie dostaniesz plan prac i wycenę.

Opisz swój proces

Na co uważać?

Limity

Limity zależą od typu konta i mogą się zmienić bez uprzedzenia. Wartości z tabeli Google:

Limit (tabela Google) Konto Gmail Konto Workspace
Odbiorcy maili dziennie 100 1 500
Czas jednego uruchomienia 6 minut 6 minut
Łączny czas wyzwalaczy dziennie 90 minut 6 godzin

Częsty błąd to przekroczenie czasu. Pomaga czytanie i zapisywanie całych zakresów jednym poleceniem zamiast komórka po komórce: w przykładzie Google takie samo zadanie skraca się z 70 sekund do 1 sekundy.

Bezpieczeństwo

  • Zakres uprawnień. GmailApp wymaga pełnego dostępu do poczty, a MailApp tylko do wysyłania. Jeśli skrypt ma tylko wysłać wiadomość, użyj MailApp.
  • Konto, na którym działa skrypt. Wyzwalacz instalowalny zawsze działa jako osoba, która go utworzyła. Mail ze skryptu wyjdzie z jej adresu, a inne konto nie zobaczy tego wyzwalacza.
  • Ekran „aplikacja niezweryfikowana”. Skrypt publikowany z konta Gmail może go pokazywać użytkownikom. Skrypty, których właściciel i użytkownicy są w jednej domenie Workspace, weryfikacji nie wymagają.
  • Nadzór administratora. Administrator może Apps Script w organizacji wyłączyć, a wtedy przestają działać także wyzwalacze.

Utrzymanie po odejściu autora

Zmiana właściciela projektu nie przenosi wdrożeń wersjonowanych, a usunięcie konta ich właściciela może powodować błędy. Wyzwalacze zostają przy koncie twórcy. Trzymaj projekty na Dysku współdzielonym, utwórz wyzwalacze na koncie służbowym i opisz w skrypcie, co robi i skąd bierze dane. Wtedy odejście jednej osoby nie zatrzyma procesu.

Pytania i odpowiedzi

Czy Google Apps Script jest płatny?

Nie. Do zaczęcia wystarczy konto Gmail, a w Google Workspace Apps Script jest domyślnie włączony we wszystkich edycjach. Limity zależą od typu konta i są wyższe w Workspace.

Ile maili może wysłać skrypt dziennie?

Z konta Gmail do 100 odbiorców dziennie, z konta Workspace do 1 500 (tabela limitów Google). Resztę dnia sprawdzisz poleceniem MailApp.getRemainingDailyQuota().

Co się dzieje ze skryptem, gdy jego autor odchodzi z firmy?

Wyzwalacze działają na koncie osoby, która je utworzyła, więc proces zależy od tego konta. Dlatego projekty trzymaj na Dysku współdzielonym, który należy do firmy, i dodaj drugiego właściciela.

Zobacz też

Filip Kostecki

Założyciel FKDRIVE. Projektuje, buduje i utrzymuje systemy webowe, automatyzacje i strony.

Porozmawiajmy o Twoim projekcie.

Trzydzieści minut online o jednym albo dwóch procesach, które zjadają najwięcej czasu. Jeśli wolisz napisać, formularz kontaktowy jest równie dobrą drogą.

Umów 30 minut

NEWSLETTER

Raz w miesiącu konkrety z wdrożeń, zero spamu

Piszemy o tym, co realnie wychodzi z wdrożeń w firmach usługowych: co zjada godziny, co daje się przestawić bez wymiany całego systemu i ile to zwykle kosztuje. Bez sprzedawania w każdej wiadomości. Na start dostajesz checklistę 15 sygnałów.

Wypisujesz się w każdej chwili. Bez zobowiązań.

COOKIES

Bez ciasteczek pracujemy po ciemku

Nie wiemy wtedy, które fragmenty tej strony komuś pomagają, a które są do wyrzucenia. Zgoda włącza statystyki odwiedzin, nagrania sesji z automatycznie maskowaną treścią formularzy oraz pomiar skuteczności reklam. Danymi nie handlujemy i nie sprzedajemy ich nikomu.

Decyzję zmienisz w każdej chwili linkiem „Ustawienia cookies” w stopce. Co dokładnie zbieramy →