Ajouter des événements à Google Agenda à partir de Google Sheets avec Apps Script

Aujourd’hui, je vais vous montrer comment ajouter automatiquement des événements à votre Google Calendar en utilisant les données saisies dans une feuille Google Sheets. En effet, cette automatisation est particulièrement utile lorsque vous devez ajouter un grand nombre d’événements ou lorsque vous souhaitez gérer votre calendrier de manière plus efficace. Grâce à Google Apps Script, ce processus devient rapide et simple.

Fonctionnalités du script

Le script que je vous propose permet d’ajouter des événements à un calendrier Google à partir d’une feuille Google Sheets. Plus précisément, il :

  • Récupère les informations des événements depuis une feuille Google Sheets.
  • Ajoute ces événements à votre Google Agenda.
  • Affiche une notification confirmant l’ajout des événements.

Étape 1 : Structurer votre feuille Google Sheets

Avant de commencer, assurez-vous d’avoir configuré votre feuille Google Sheets comme suit :

  • Colonne A : Titre de l’événement
  • Colonne B : Description de l’événement
  • Colonne C : Date de début (format : JJ/MM/AAAA)
  • Colonne D : Heure de début (format : HH:MM)
  • Colonne E : Date de fin (format : JJ/MM/AAAA)
  • Colonne F : Heure de fin (format : HH:MM)
  • Colonne G : Lieu de l’événement

N’oubliez pas que ces colonnes doivent commencer à partir de la deuxième ligne, car la première ligne sert d’en-tête.

Étape 2 : Le script Google Apps Script

Voici le script que vous allez utiliser pour ajouter les événements à votre calendrier Google :

function ajouterEvenementsAuCalendrier() {
  // Récupérer la feuille active
  const feuille = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  // Définir la première ligne et le nombre de lignes de données
  const premiereLigne = 2; 
  const nombreDeLignes = feuille.getLastRow() - 1; 

  // Récupérer les données de la plage spécifiée
  const plageDonnees = feuille.getRange(premiereLigne, 1, nombreDeLignes, 7).getValues();

  // Récupérer le calendrier (utiliser par défaut si non spécifié)
  const calendrierId = 'votreemail@gmail.com'; // Remplacez par l'adresse e-mail de votre calendrier ou laissez vide pour le calendrier par défaut
  const calendrier = CalendarApp.getCalendarById(calendrierId);

  // Parcourir chaque ligne de données
  plageDonnees.forEach(ligne => {
    const [titre, description, dateDebut, heureDebut, dateFin, heureFin, lieu] = ligne;

    // Fusionner les dates et les heures pour créer les objets de date de début et de fin
    const dateHeureDebut = new Date(`${dateDebut} ${heureDebut}`);
    const dateHeureFin = new Date(`${dateFin} ${heureFin}`);

    // Ajouter l'événement au calendrier
    calendrier.createEvent(titre, dateHeureDebut, dateHeureFin, {
      description: description,
      location: lieu
    });
  });

  // Alerter l'utilisateur une fois que tous les événements ont été ajoutés
  SpreadsheetApp.getUi().alert("Les événements ont été ajoutés avec succès !");
}

Explication du script

  1. Récupération de la feuille active : Le script commence par récupérer la feuille Google Sheets active contenant les données des événements.
  2. Récupération des données : Ensuite, il récupère les données de toutes les lignes, en partant de la deuxième ligne afin d’éviter les en-têtes.
  3. Accès au calendrier : Le script utilise l’identifiant du calendrier (calendrierId) pour accéder au calendrier cible. Remplacez votreemail@exemple.com par votre adresse e-mail ou laissez-le vide pour utiliser le calendrier par défaut.
  4. Ajout des événements : Pour chaque ligne de données, le script fusionne les dates et les heures afin de créer les objets Date de début et de fin, puis ajoute l’événement à votre calendrier.
  5. Confirmation de l’ajout : Enfin, un message d’alerte s’affiche pour confirmer que les événements ont bien été ajoutés.

Étape 3 : Comment exécuter le script ?

Pour exécuter ce script :

  1. Dans votre feuille Google Sheets, accédez à Extensions > Apps Script.
  2. Collez le script dans l’éditeur de script.
  3. Enregistrez en cliquant sur l’icône de disquette.
  4. Fermez l’éditeur de script.
  5. Retournez à votre feuille Google Sheets et lancez le script via Extensions > Apps Script > Fonction > ajouterEvenementsAuCalendrier.

Lors de la première exécution, Google demandera des autorisations pour accéder à votre calendrier et à votre feuille. Vous devrez les accepter afin que le script fonctionne correctement.

Bonnes pratiques et conseils

  • Vérifiez vos données : Avant d’exécuter le script, assurez-vous que les dates et les heures sont bien formatées.
  • Testez sur un calendrier de test : Pour éviter les erreurs, je recommande de tester le script sur un calendrier secondaire.
  • Personnalisez le script : Enfin, n’hésitez pas à adapter ce script selon vos besoins spécifiques.

Avec ce script, vous pourrez ajouter rapidement des événements à votre Google Agenda en utilisant les données de votre feuille Google Sheets. Cela vous permettra de gagner un temps précieux et de mieux organiser votre emploi du temps.


Soutenez mon travail

Si cet article vous a été utile et que vous souhaitez soutenir mon travail, vous pouvez me remercier en faisant un don via PayPal. Chaque contribution est grandement appréciée et m’aide à continuer à partager des astuces et conseils sur ce blog. Merci pour votre soutien !

L’Atelier Informatique vous accompagne dans vos projets technologiques en vous proposant des tutoriels et des solutions pour optimiser vos tâches quotidiennes.