Gérer efficacement vos contacts et notes : intégrez Google Contacts à Google Sheets

5 mn de lecture

En tant qu’entrepreneur individuel, vous avez probablement besoin d’un outil simple et efficace pour gérer vos contacts et les notes associées. Les CRM traditionnels peuvent souvent sembler trop complexes, surtout lorsque vous n’avez besoin que d’une solution basique pour centraliser vos contacts et ajouter des notes au fil du temps.

Un utilisateur m’a demandé sur les réseaux sociaux s’il était possible d’avoir un système qui lui permettrait d’ajouter plusieurs notes à ses contacts sans la complexité d’un CRM. La bonne nouvelle est que grâce à Google Contacts et Google Sheets, vous pouvez créer une solution personnalisée qui répond parfaitement à vos besoins.

Présentation de la feuille de calcul

Dans cet article, je vais vous montrer comment :

  1. Importer vos contacts Google dans Google Sheets.
  2. Ajouter des notes à vos contacts.
  3. Organiser l’ensemble de vos interactions dans une seule feuille.
  4. Automatiser le processus pour gagner du temps.

Pourquoi utiliser Google Contacts et Google Sheets ?

Google Contacts offre un moyen simple de stocker des informations sur vos contacts, mais il ne permet pas de gérer plusieurs notes associées à un même contact. En intégrant Google Sheets, vous obtenez une flexibilité accrue pour organiser vos contacts, ajouter des notes multiples, et conserver toutes vos informations dans un seul endroit.

Étape 1 : Importer vos contacts Google dans Google Sheets

La première étape consiste à extraire vos contacts Google dans une feuille de calcul Google Sheets. Pour cela, nous allons utiliser Google Apps Script, un outil puissant qui permet d’automatiser des tâches et d’interagir avec différents services Google.

a. Créer une feuille de calcul

  1. Ouvrez Google Sheets et créez une nouvelle feuille intitulée « Contacts ».
  2. Ajoutez une autre feuille intitulée « Journal » pour gérer les notes que vous ajouterez ultérieurement.

b. Récupérer les contacts à l’aide de Google Apps Script

Accédez à « Extensions > Apps Script » dans Google Sheets, puis collez le code suivant :

// Fonction pour importer les contacts Google dans la feuille "Contacts"
function importerContacts() {
  const feuilleContacts = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Contacts");
  feuilleContacts.clearContents();

  // Ajouter les en-têtes
  feuilleContacts.appendRow(["Nom de famille", "Prénom", "Email", "Téléphone"]);

  // Mettre l'entête en gras et figer la première ligne
  feuilleContacts.getRange("1:1").setFontWeight("bold");
  feuilleContacts.setFrozenRows(1);

  // Formater la colonne Téléphone en texte
  feuilleContacts.getRange("D:D").setNumberFormat("@");

  let pageToken;
  const toutesDonnees = [];
  do {
    const reponse = People.People.Connections.list('people/me', {
      personFields: 'names,emailAddresses,phoneNumbers',
      pageSize: 2000,
      pageToken: pageToken
    });

    const connexions = reponse.connections;
    if (connexions) {
      connexions.forEach(personne => {
        const nomDeFamille = personne.names && personne.names[0].familyName ? personne.names[0].familyName : "";
        const prenom = personne.names && personne.names[0].givenName ? personne.names[0].givenName : "";
        const email = personne.emailAddresses ? personne.emailAddresses[0].value : "";
        const telephone = personne.phoneNumbers ? personne.phoneNumbers[0].value : "";

        toutesDonnees.push([nomDeFamille, prenom, email, telephone]);
      });
    }
    pageToken = reponse.nextPageToken;
  } while (pageToken);

  // Trier les données par nom de famille
  toutesDonnees.sort((a, b) => a[0].localeCompare(b[0]));

  // Insérer toutes les données en une seule fois
  if (toutesDonnees.length > 0) {
    const plageDonnees = feuilleContacts.getRange(2, 1, toutesDonnees.length, 4);
    plageDonnees.setValues(toutesDonnees);

    // Aligner les données à gauche et les centrer verticalement
    plageDonnees.setHorizontalAlignment("left");
    plageDonnees.setVerticalAlignment("middle");
  }
}

Ce script extrait tous vos contacts de Google Contacts et les importe dans la feuille « Contacts » en les triant par nom de famille.

c. Exécuter la fonction d’importation

  1. Enregistrez le script.
  2. Cliquez sur « Exécuter > importerContacts » dans le menu Apps Script.
  3. Autorisez l’accès aux contacts Google si nécessaire.

Vos contacts apparaîtront dans la feuille Google Sheets, triés par nom de famille.

Étape 2 : Ajouter des notes à vos contacts

Maintenant que vos contacts sont dans Google Sheets, vous pouvez commencer à ajouter des notes associées à chaque contact. La feuille « Journal » que vous avez créée précédemment permettra de centraliser ces notes.

a. Structure de la feuille « Notes »

Dans la feuille « Journal », ajoutez les en-têtes suivants :

  • Nom de famille
  • Prénom
  • Date
  • Note

Chaque fois que vous voulez ajouter une nouvelle note pour un contact, renseignez son nom de famille, prénom, la date de la note, et la note elle-même.

Étape 3 : Intégrer une barre latérale pour ajouter des notes

Pour faciliter l’ajout de notes, nous pouvons créer une barre latérale qui permet d’ajouter des notes directement à partir de Google Sheets.

a. Créer une interface de barre latérale

Ajoutez un nouveau fichier HTML dans Apps Script en cliquant sur « Fichier > Nouveau > Fichier HTML », puis nommez-le « Sidebar ». Collez le code suivant :

<!DOCTYPE html>
<html>
<head>
  <base target="_top">
  <style>
    body { font-family: Arial, sans-serif; margin: 20px; }
    select, textarea, input { margin-bottom: 10px; width: 100%; padding: 5px; }
    input[type="button"] { background-color: #1a73e8; color: white; border: none; padding: 8px; cursor: pointer; }
  </style>
</head>
<body>
  <h2>Ajouter une note</h2>
  <label for="contact">Contact :</label>
  <select id="contact"></select>

  <label for="note">Note :</label>
  <textarea id="note" rows="4"></textarea>

  <input type="button" value="Ajouter" onclick="ajouterNote()">

  <script>
    function loadContacts() {
      google.script.run.withSuccessHandler(function(contacts) {
        const select = document.getElementById('contact');
        contacts.forEach(contact => {
          const option = document.createElement('option');
          option.value = contact;
          option.text = contact;
          select.add(option);
        });
      }).getContactsList();
    }

    function ajouterNote() {
      const contact = document.getElementById('contact').value;
      const note = document.getElementById('note').value;

      google.script.run.withSuccessHandler(() => {
        alert('Note ajoutée avec succès');
        google.script.host.close();
      }).ajouterNote({ contact, note });
    }

    window.onload = loadContacts;
  </script>
</body>
</html>

b. Ajouter la fonction ajouterNote dans Apps Script

Ajoutez cette fonction dans votre script principal :

function ajouterNote({ contact, note }) {
  const [nomDeFamille, prenom] = contact.split(" ");
  const feuilleNotes = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Journal");
  feuilleNotes.appendRow([nomDeFamille, prenom, new Date(), note]);
}

function getContactsList() {
  const feuilleContacts = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Contacts");
  const lastRow = feuilleContacts.getLastRow();
  const contactsData = feuilleContacts.getRange(2, 1, lastRow - 1, 2).getValues();
  return contactsData.map(row => row.join(" "));
}

function onOpen() {
  const ui = SpreadsheetApp.getUi();
  ui.createMenu('Gestion des Contacts')
    .addItem('Importer les Contacts', 'importerContacts')
    .addItem('Ajouter une note', 'ouvrirSidebar')
    .addToUi();
}

function ouvrirSidebar() {
  const html = HtmlService.createHtmlOutputFromFile('Sidebar').setTitle('Ajouter une note');
  SpreadsheetApp.getUi().showSidebar(html);
}

Étape 4 : Automatiser et finaliser

  • À l’ouverture de la feuille, un menu personnalisé s’affichera avec des options pour importer des contacts et ajouter des notes.
  • Utilisez régulièrement la barre latérale pour ajouter des notes à vos contacts.

Avec cette intégration entre Google Contacts et Google Sheets, vous disposez désormais d’un outil simple, efficace, et personnalisable pour gérer vos contacts et vos notes. Ce processus vous permet de conserver toutes vos informations en un seul endroit, tout en vous offrant la flexibilité de gérer vos interactions de manière professionnelle.

N’hésitez pas à essayer cette solution et à l’adapter à vos besoins. Si vous avez des questions, n’hésitez pas à les poser dans les commentaires !


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 !