Objets d'événement

Les déclencheurs simples et les déclencheurs installables permettent à Apps Script d'exécuter automatiquement une fonction si un événement se produit. Lorsqu'un déclencheur est exécuté, Apps Script transmet à la fonction un objet d'événement en tant qu'argument, généralement appelé e. L'objet événement contient des informations sur le contexte qui a provoqué l'activation du déclencheur. Par exemple, l'exemple de code ci-dessous montre un déclencheur onEdit(e) simple pour un script Google Sheets qui utilise l'objet d'événement pour déterminer quelle cellule a été modifiée.

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());
}

Cette page détaille les champs de l'objet événement pour différents types de déclencheurs.

Événements Google Sheets

Les différents déclencheurs spécifiques à Google Sheets permettent aux scripts de répondre aux actions d'un utilisateur dans une feuille de calcul.

Ouvrir

(simple et installable)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

LIMITED
source

Un objet Spreadsheet représentant le fichier Google Sheets auquel le script est lié.

Spreadsheet
triggerUid

ID du déclencheur qui a généré cet événement (déclencheurs installables uniquement).

4034124084959907503
user

Un objet User représentant l'utilisateur actif, si disponible (en fonction d'un ensemble complexe de restrictions de sécurité)

amin@example.com

Modifier

(installable)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

FULL
changeType

Type de modification (EDIT, INSERT_ROW, INSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMAT ou OTHER).

INSERT_ROW
triggerUid

ID du déclencheur ayant généré cet événement.

4034124084959907503
user

Un objet User représentant l'utilisateur actif, si disponible (en fonction d'un ensemble complexe de restrictions de sécurité)

amin@example.com

Modifier

(simple et installable)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

LIMITED
oldValue

Valeur de la cellule avant la modification, le cas échéant. Disponible uniquement si la plage modifiée correspond à une seule cellule. Ne sera pas définie si la cellule n'avait pas de contenu précédent.

1234
range

Un objet Range représentant la cellule ou la plage de cellules modifiées.

Range
source

Un objet Spreadsheet représentant le fichier Google Sheets auquel le script est lié.

Spreadsheet
triggerUid

ID du déclencheur qui a généré cet événement (déclencheurs installables uniquement).

4034124084959907503
user

Un objet User représentant l'utilisateur actif, si disponible (en fonction d'un ensemble complexe de restrictions de sécurité)

amin@example.com
value

Nouvelle valeur de cellule après la modification. Disponible uniquement si la plage modifiée est une cellule unique.

10

Envoi de formulaire

(installable)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

FULL
namedValues

Objet contenant les noms et les valeurs des questions envoyées lors de l'envoi du formulaire.

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

Un objet Range représentant la cellule ou la plage de cellules modifiées.

Range
triggerUid

ID du déclencheur ayant généré cet événement.

4034124084959907503
values

Tableau avec des valeurs dans le même ordre que dans la feuille de calcul.

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

Événements Google Docs

Les déclencheurs permettent à Google Docs de répondre lorsqu'un utilisateur ouvre un document.

Ouvrir

(simple et installable)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

LIMITED
source

Un objet Document représentant le fichier Google Docs auquel le script est lié.

Document
triggerUid

ID du déclencheur qui a généré cet événement (déclencheurs installables uniquement).

4034124084959907503
user

Un objet User représentant l'utilisateur actif, si disponible (en fonction d'un ensemble complexe de restrictions de sécurité)

amin@example.com

Événements Google Slides

Les déclencheurs permettent à Google Slides de répondre lorsqu'un utilisateur ouvre une présentation.

Ouvrir

(simple)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

LIMITED
source

Un objet Presentation représentant le fichier Google Slides auquel le script est lié.

Presentation
user

Un objet User représentant l'utilisateur actif, si disponible (en fonction d'un ensemble complexe de restrictions de sécurité)

amin@example.com

Événements Google Forms

Les déclencheurs spécifiques à Google Forms permettent aux scripts de répondre lorsqu'un utilisateur modifie un formulaire ou envoie une réponse.

Ouvrir

* (simple et installable)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

LIMITED
source

Un objet Form, représentant le fichier Google Forms auquel le script est lié.

Form
triggerUid

ID du déclencheur qui a généré cet événement (déclencheurs installables uniquement).

4034124084959907503
user

Un objet User représentant l'utilisateur actif, si disponible (en fonction d'un ensemble complexe de restrictions de sécurité)

amin@example.com

* Cet événement ne se produit pas lorsqu'un utilisateur ouvre un formulaire pour répondre, mais lorsqu'un éditeur ouvre le formulaire pour le modifier.

Envoi de formulaire

(installable)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

FULL
response

Objet FormResponse représentant la réponse de l'utilisateur au formulaire dans son ensemble.

FormResponse
source

Un objet Form, représentant le fichier Google Forms auquel le script est lié.

Form
triggerUid

ID du déclencheur ayant généré cet événement.

4034124084959907503

Événements Google Agenda

Les déclencheurs d'Agenda sont déclenchés lorsqu'un événement d'agenda est mis à jour (créé, modifié ou supprimé).

Ces déclencheurs ne vous indiquent pas quel événement a changé, ni de quelle manière. Elles indiquent plutôt que votre code doit effectuer une opération de synchronisation incrémentielle pour récupérer les modifications récentes apportées à l'agenda. Pour obtenir une description complète de cette procédure, consultez le guide de synchronisation des ressources de l'API Calendar.

Pour synchroniser avec Agenda dans Apps Script, procédez comme suit:

  1. Activez le service avancé d'Agenda pour le projet de script. Le service Agenda intégré n'est pas suffisant pour ce workflow.
  2. Déterminez les agendas à synchroniser. Pour chacun de ces agendas, effectuez une synchronisation initiale à l'aide de la méthode Events.list() du service avancé d'Agenda.
  3. Le résultat de la synchronisation initiale renvoie un nextSyncToken pour cet agenda. Stockez ce jeton pour une utilisation ultérieure.
  4. Lorsque le déclencheur Apps Script EventUpdated se déclenche et indique une modification d'événement d'agenda, effectuez une synchronisation incrémentielle pour l'agenda concerné à l'aide du nextSyncToken stocké. Il s'agit essentiellement d'une autre requête Events.list(), mais la spécification de nextSyncToken limite la réponse aux seuls événements modifiés depuis la dernière synchronisation.
  5. Examinez la réponse de la synchronisation pour savoir quels événements ont été mis à jour et faire en sorte que votre code réponde de manière appropriée. Par exemple, vous pouvez enregistrer la modification, mettre à jour une feuille de calcul, envoyer des notifications par e-mail ou effectuer d'autres actions.
  6. Mettez à jour le nextSyncToken que vous avez stocké pour cet agenda avec celui renvoyé par la requête de synchronisation incrémentielle. Cela oblige la prochaine opération de synchronisation à renvoyer uniquement les modifications les plus récentes.

Événement mis à jour

(installable)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

FULL
calendarId

Identifiant de chaîne de l'agenda dans lequel la mise à jour de l'événement a eu lieu.

susan@example.com
triggerUid

ID du déclencheur ayant généré cet événement.

4034124084959907503

Événements complémentaires

Le déclencheur onInstall() s'exécute automatiquement lorsqu'un utilisateur installe un module complémentaire.

Installer

(simple)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

FULL

Événements ponctuels

Les déclencheurs basés sur l'heure (également appelés déclencheurs d'horloge) permettent aux scripts de s'exécuter à un moment précis ou à un intervalle récurrent.

En fonction du temps (installation)
authMode

Une valeur de l'énumération ScriptApp.AuthMode

FULL
day-of-month

Entre 1 et 31.

Comme ce nom de propriété contient des tirets, il doit être accessible via e['day-of-month'] au lieu de la notation par points.

31
day-of-week

Entre 1 (lundi) et 7 (dimanche).

Comme ce nom de propriété contient des tirets, il doit être accessible via e['day-of-week'] au lieu de la notation par points.

7
hour

Entre 0 et 23.

23
minute

Entre 0 et 59.

59
month

Entre 1 et 12.

12
second

Entre 0 et 59.

59
timezone

Fuseau horaire.

UTC
triggerUid

ID du déclencheur ayant généré cet événement.

4034124084959907503
week-of-year

Entre 1 et 52.

Comme ce nom de propriété contient des tirets, il doit être accessible via e['week-of-year'] au lieu de la notation par points.

52
year

L'année

2015