Ereignisobjekte

Mit einfachen Triggern und installierbaren Triggern können Sie in Apps Script eine Funktion automatisch ausführen lassen, wenn ein bestimmtes Ereignis eintritt. Wenn ein Trigger ausgelöst wird, übergibt Apps Script der Funktion ein Ereignisobjekt als Argument, das normalerweise e heißt. Das Ereignisobjekt enthält Informationen zum Kontext, der den Trigger ausgelöst hat. Im folgenden Beispielcode wird beispielsweise ein einfacher onEdit(e)-Trigger für ein Google Tabellen-Script gezeigt, bei dem anhand des Ereignisobjekts ermittelt wird, welche Zelle bearbeitet wurde.

function onEdit(e){
  // Set a comment on the edited cell to indicate when it was changed.
  var range = e.range;
  range.setNote('Last modified: ' + new Date());
}

Auf dieser Seite werden die Felder im Ereignisobjekt für verschiedene Triggertypen beschrieben.

Google Tabellen-Ereignisse

Mit den verschiedenen Google Tabellen-spezifischen Triggern können Scripts auf die Aktionen eines Nutzers in einer Tabelle reagieren.

Öffnen

(einfach und installierbar)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

LIMITED
source

Ein Spreadsheet-Objekt, das die Google Tabellen-Datei darstellt, an die das Script gebunden ist.

Spreadsheet
triggerUid

ID des Trigger, durch den dieses Ereignis ausgelöst wurde (nur installierbare Trigger).

4034124084959907503
user

Ein User-Objekt, das den aktiven Nutzer darstellt, sofern verfügbar (je nach komplexen Sicherheitseinschränkungen).

amin@example.com

Ändern

(installierbar)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

FULL
changeType

Die Art der Änderung (EDIT, INSERT_ROW, INSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMAT oder OTHER).

INSERT_ROW
source

Ein Spreadsheet-Objekt, das die Google Tabellen-Datei darstellt, an die das Script gebunden ist.

Spreadsheet
triggerUid

ID des Triggers, der dieses Ereignis verursacht hat.

4034124084959907503
user

Ein User-Objekt, das den aktiven Nutzer darstellt, sofern verfügbar (je nach komplexen Sicherheitseinschränkungen).

amin@example.com

Bearbeiten

(einfach und installierbar)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

LIMITED
oldValue

Zellenwert vor der Änderung, falls vorhanden. Nur verfügbar, wenn der bearbeitete Bereich eine einzelne Zelle ist. Ist nicht definiert, wenn die Zelle zuvor keinen Inhalt hatte.

1234
range

Ein Range-Objekt, das die Zelle oder den Zellenbereich darstellt, die bzw. der bearbeitet wurde.

Range
source

Ein Spreadsheet-Objekt, das die Google Tabellen-Datei darstellt, an die das Script gebunden ist.

Spreadsheet
triggerUid

ID des Trigger, durch den dieses Ereignis ausgelöst wurde (nur installierbare Trigger).

4034124084959907503
user

Ein User-Objekt, das den aktiven Nutzer darstellt, sofern verfügbar (je nach komplexen Sicherheitseinschränkungen).

amin@example.com
value

Neuer Zellenwert nach der Bearbeitung. Nur verfügbar, wenn der bearbeitete Bereich eine einzelne Zelle ist.

10

Formular senden

(installierbar)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

FULL
namedValues

Ein Objekt mit den Namen und Werten der Fragen aus der Formulareinreichung.

{
  'First Name': ['Jane'],
  'Timestamp': ['6/7/2015 20:54:13'],
  'Last Name': ['Doe']
}
range

Ein Range-Objekt, das die Zelle oder den Zellenbereich darstellt, der bearbeitet wurde.

Range
triggerUid

ID des Triggers, der dieses Ereignis verursacht hat.

4034124084959907503
values

Array mit Werten in derselben Reihenfolge wie in der Tabelle.

['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill',
'28', 'Susan', '25']

Google Docs-Ereignisse

Mit Triggern kann Google Docs reagieren, wenn ein Nutzer ein Dokument öffnet.

Öffnen

(einfach und installierbar)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

LIMITED
source

Ein Document-Objekt, das die Google Docs-Datei darstellt, an die das Script gebunden ist.

Document
triggerUid

ID des Trigger, durch den dieses Ereignis ausgelöst wurde (nur installierbare Trigger).

4034124084959907503
user

Ein User-Objekt, das den aktiven Nutzer darstellt, sofern verfügbar (je nach komplexen Sicherheitseinschränkungen).

amin@example.com

Google Präsentationen-Ereignisse

Mit Triggern kann Google Präsentationen reagieren, wenn ein Nutzer eine Präsentation öffnet.

Öffnen

(einfach)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

LIMITED
source

Ein Presentation-Objekt, das die Google Präsentationsdatei darstellt, an die das Script gebunden ist.

Presentation
user

Ein User-Objekt, das den aktiven Nutzer darstellt, sofern verfügbar (je nach komplexen Sicherheitseinschränkungen).

amin@example.com

Google Formulare-Ereignisse

Mit den Google Forms-spezifischen Triggern können Scripts reagieren, wenn ein Nutzer ein Formular bearbeitet oder eine Antwort sendet.

Öffnen

* (einfach und installierbar)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

LIMITED
source

Ein Form-Objekt, das die Google Forms-Datei darstellt, an die das Script gebunden ist.

Form
triggerUid

ID des Trigger, durch den dieses Ereignis ausgelöst wurde (nur installierbare Trigger).

4034124084959907503
user

Ein User-Objekt, das den aktiven Nutzer darstellt, sofern verfügbar (je nach komplexen Sicherheitseinschränkungen).

amin@example.com

* Dieses Ereignis tritt nicht auf, wenn ein Nutzer ein Formular öffnet, um es auszufüllen, sondern wenn ein Bearbeiter das Formular öffnet, um es zu ändern.

Formular senden

(installierbar)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

FULL
response

Ein FormResponse-Objekt, das die Antwort des Nutzers auf das Formular insgesamt darstellt.

FormResponse
source

Ein Form-Objekt, das die Google Forms-Datei darstellt, an die das Script gebunden ist.

Form
triggerUid

ID des Triggers, der dieses Ereignis verursacht hat.

4034124084959907503

Google Kalender-Termine

Kalendertrigger werden ausgelöst, wenn die Kalendertermine eines Nutzers aktualisiert (erstellt, bearbeitet oder gelöscht) werden.

Diese Auslöser geben nicht an, welches Ereignis sich geändert hat oder wie es sich geändert hat. Stattdessen geben sie an, dass Ihr Code eine inkrementelle Synchronisierung ausführen muss, um die letzten Änderungen am Kalender zu berücksichtigen. Eine vollständige Beschreibung dieses Verfahrens finden Sie im Leitfaden zum Synchronisieren von Ressourcen für die Calendar API.

So synchronisieren Sie in Apps Script mit Google Kalender:

  1. Aktivieren Sie den erweiterten Kalenderdienst für das Scriptprojekt. Der integrierte Kalenderdienst reicht für diesen Workflow nicht aus.
  2. Legen Sie fest, welche Kalender synchronisiert werden sollen. Führen Sie für jeden dieser Kalender eine erste Synchronisierung mithilfe der Methode Events.list() des erweiterten Kalenderdienstes aus.
  3. Das Ergebnis der ersten Synchronisierung gibt für diesen Kalender eine nextSyncToken zurück. Speichern Sie dieses Token für später.
  4. Wenn der Apps Script-Trigger EventUpdated ausgelöst wird, um eine Kalenderereignisänderung anzuzeigen, führen Sie eine inkrementelle Synchronisierung für den betroffenen Kalender mithilfe des gespeicherten nextSyncToken durch. Dies ist im Grunde eine weitere Events.list()-Anfrage. Wenn Sie jedoch nextSyncToken angeben, wird die Antwort auf Ereignisse beschränkt, die sich seit der letzten Synchronisierung geändert haben.
  5. Prüfe die Antwort der Synchronisierung, um herauszufinden, welche Ereignisse aktualisiert wurden, und lasse deinen Code entsprechend reagieren. Sie können beispielsweise die Änderung protokollieren, eine Tabelle aktualisieren, E-Mail-Benachrichtigungen senden oder andere Aktionen ausführen.
  6. Aktualisieren Sie die für diesen Kalender gespeicherte nextSyncToken mit der von der inkrementellen Synchronisierungsanfrage zurückgegebenen nextSyncToken. Dadurch werden beim nächsten Synchronisierungsvorgang nur die neuesten Änderungen zurückgegeben.

EventUpdated

(installierbar)
authMode

Ein Wert aus der Aufzählung ScriptApp.AuthMode.

FULL
calendarId

Die String-ID des Kalenders, in dem die Ereignisaktualisierung stattgefunden hat.

susan@example.com
triggerUid

ID des Triggers, durch den dieses Ereignis ausgelöst wurde.

4034124084959907503

Google Workspace-Add-on-Ereignisse

Der onInstall()-Trigger wird automatisch ausgeführt, wenn ein Nutzer ein Add-on installiert.

Installieren

(einfach)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

FULL

Ereignisse der Google Chat App

Weitere Informationen zu Ereignisobjekten in Google Chat finden Sie unter Interaktionen über Ihre Google Chat-App empfangen und darauf reagieren.

Zeitgesteuerte Ereignisse

Mit zeitgesteuerten Triggern (auch Zeittrigger genannt) können Scripts zu einer bestimmten Zeit oder in einem wiederkehrenden Intervall ausgeführt werden.

Zeitgesteuert (installierbar)
authMode

Ein Wert aus dem ScriptApp.AuthMode-Enum.

FULL
day-of-month

Zwischen 1 und 31

Da dieser Property-Name Bindestriche enthält, muss der Zugriff über e['day-of-month'] und nicht über die Punktnotation erfolgen.

31
day-of-week

Zwischen 1 (Montag) und 7 (Sonntag).

Da dieser Property-Name Bindestriche enthält, muss der Zugriff über e['day-of-week'] und nicht über die Punktnotation erfolgen.

7
hour

Zwischen 0 und 23

23
minute

Zwischen 0 und 59

59
month

Zwischen 1 und 12

12
second

Zwischen 0 und 59

59
timezone

Die Zeitzone.

UTC
triggerUid

ID des Triggers, der dieses Ereignis verursacht hat.

4034124084959907503
week-of-year

Zwischen 1 und 52

Da dieser Property-Name Bindestriche enthält, muss der Zugriff über e['week-of-year'] und nicht über die Punktnotation erfolgen.

52
year

Das Jahr

2015