Numeriblog Google Workspace Google Sheets, le tableur surpuissant Google Sheets : traiter, utiliser, partager les données efficacement : 5/5 – centraliser et partager les données

Google Sheets : traiter, utiliser, partager les données efficacement : 5/5 – centraliser et partager les données

Dans ce dernier article de la série, je vous propose d’aborder la question de l’organisation générale des informations dans votre entreprise. L’idée est d’optimiser la gestion des données en différenciant clairement la question de : […]

personnes ont consulté cet article

3 minutes

Rédigé par Antoine MARTIN - il y a 4 ans

Ce que vous allez découvrir

  • Identifier les données grâce aux plages nommées
  • Lister et localiser les données disponibles

Google Sheets : traiter, utiliser, partager les données efficacement : 5/5 – centraliser et partager les données

Dans ce dernier article de la série, je vous propose d’aborder la question de l’organisation générale des informations dans votre entreprise. L’idée est d’optimiser la gestion des données en différenciant clairement la question de :

  • la saisie, mise à jour et stockage des données d’une part ;
  • l’utilisation de ces données d’autre part ;

ce qui nous amène à identifier les feuilles de calcul qui serviront de tables de données, et celles qui permettront de construire des vues.

Pour créer des vues, nous avons vu dans l’article 4 qu’il fallait importer les données nécessaires dans la feuille qui permettrait de construire les fameuses vues.

Voici un cas concret :

Une agence de communication gère des clients, des projets et des salariés. Elle met en place trois feuilles de calcul servant de table de données pour chaque secteur :

Table CLIENTS, gérée par le service commercial

table PROJETS, gérée par le service graphistes

table SALARIES, gérée par la direction

Ces trois tables doivent communiquer entre elles, pour de nombreux besoins du type :

  • Les commerciaux : « Nous aimerions connaître les projets réalisés par les graphistes pour chaque client quand nous les relançons. »
  • Les graphistes : « Quand on entre un nouveau projet, il faudrait qu’on récupère la liste des clients gérés par les commerciaux pour en associer un au projet, et du coup récupérer l’adresse mail du contact client, et aussi associer le chef de projet et les exécutants en utilisant une liste à jour des salariés. »
  • La direction : « Je veux avoir un aperçu des projets par client et par salarié, avec projection des temps d’occupation de ces derniers. »

Chaque service a donc

  • la responsabilité de gérer certaines données ;
  • le droit de récupérer certaines données des autres services.

Voici une procédure que j’ai mise en place dans les entreprises que j’accompagne pour documenter les données disponibles et les importer rapidement dans une feuille de vue.

Identifier les données grâce aux plages nommées

L’importation d’un tableau entier via la fonction IMPORTRANGE() dans une feuille destinée à être une vue pose trois problèmes :

  • lourdeur inutile de l’importation : pourquoi importer une vingtaine de colonnes d’une table alors que je n’ai besoin que de deux ?
  • faille de confidentialité : toutes les données d’une table ne sont pas communicables à tout le monde, par exemple les informations personnelles de chaque salarié, comme le numéro de sécurité sociale ou le téléphone, ne doivent pas être communiquées aux graphistes ;
  • dépendance au nombre de colonnes et à leurs places dans la feuille de destination. IMPORTRANGE() spécifie les noms des colonnes à importer. Exemple : Feuille1!A:D récupère les colonnes A à D de « Feuille1 ». Si la personne en charge de cette feuille rajoute une colonne pour insérer une information manquante, cela provoque un décalage pour la feuille de destination. Bref, ingérable.

Pour palier ces problèmes, je propose d’utiliser les plages nommées dans les tables de données pour nommer chaque colonne grâce à un nom clairement identifiable. Encore une habitude héritée de l’utilisation de SQL !

Image de référence
  • sélectionnez toute une colonne (et une seule) ;
  • cliquez sur « Données / Plages Nommées » ;
  • nommez la colonne (préconisation : TABLE_COLONNE) les majuscules c’est juste une question d’habitude :), le « _ » permet de séparer les données (le « – » n’est pas utilisable) ;
  • cliquer sur « OK » pour enregistrer la plage.
Ajouter des plages nommées dans la table CLIENTS

Répétez la procédure pour chaque colonne.

C’est un peu laborieux, mais les données seront ainsi clairement identifiées, indépendantes les unes des autres et « cerise on the cake », en cas d’insertion de colonne, la plage nommée se met à jour !

Voici un aperçu de la table CLIENT contenant toutes les plages nommées.

plages nommées de la table CLIENTS

Par exemple, vous pourrez à présent importer uniquement le prénom et le nom d’un client dans une feuille externe, en créant un IMPORTRANGE() pour chaque plage nommée.

Voyons comment créer ces IMPORTRANGE() et les récupérer rapidement 🙂

Lister et localiser les données disponibles

Rappel : Lister = créer une table de données ! Youpi : une table de données des données de toutes les tables de données ! (Hommage à Raymond Devos)

Créez un Google Sheets comprenant deux feuilles :

  • SHEETS : permet de lister les Sheets contenant des données :
    • ID (récupérable dans l’URL du SHEET) ;
    • nom de la table ;
  • DONNEES : permet de lister les plages nommées et de créer automatiquement l’IMPORTRANGE correspondant :
    • Nom de la table (liste déroulante issue de la feuille SHEETS),
    • Nom de la plage nommée,
    • récupération de l’ID de la table
=ArrayFormula(SI(B:B<>"";SI(B:B=B1;"ID TABLE";RECHERCHEV(A:A;SHEETS!A:B;2;FAUX));""))
  • création de l’IMPORTRANGE
=ArrayFormula(SI(B:B<>"";"=IMPORTRANGE("""&C:C&""";"""&B:B&""")";""))

Cette table de données hautement stratégique, permet de venir piocher les IMPORTRANGE() utiles pour les différents utilisateurs. L’administrateur des données doit être le seul à avoir accès à cette table, il pourra y copier les formules IMPORTRANGE() nécessaires à la construction d’une vue pour un service, et les coller dans le fichier de destination.


Collez la formule IMPORTRANGE() générée dans la feuille CARTOGRAPHIE dans la cellule A1 pour récupérer l’ID du client :

Collez la formule IMPORTRANGE() générée dans CARTOGRAPHIE de l’e-mail dans la cellule B1 :


Cet article vient clôturer la série dédiée à l’utilisation de Google Sheets pour en faire un système d’information du type MVC (Model / Vue / Contrôleur). Il reste beaucoup de choses à dire et à explorer mais j’espère que ces approches vous ont permis d’appréhender les points d’attention dans la gestion et le partage des données au sein d’une entreprise ou d’un groupe. Nous pourrions évoquer les limites d’une telle pratique, surtout en terme de rapidité de calcul, et envisager des solutions plus avancées pour partager les données, en particulier avec des scripts. Peut-être dans la suite ?

Merci pour vos commentaires constructifs et vos témoignages sur l’utilisation de Google Sheets en tant que système d’information.

Besoin d'un peu plus d'aide sur Sheets ?

Des formateurs sont disponibles toute l'année pour vous accompagner et optimiser votre utilisation de Sheets, que ce soit pour votre entreprise ou pour vos besoins personnels !

Découvrir nos formations Sheets

Articles similaires

  • Articles connexes
  • Plus de l'auteur

Rédacteur

Photo de profil de l'auteur
Antoine MARTIN

Consultant et formateur sur les outils bureautiques, j'ai intégré l'équipe de Numericoach en 2020. J'accompagne les utilisateurs de Google Workspace à trouver des solutions répondant à leurs besoins. Mes domaines de prédilections sont les outils Sheets, Docs, Slides et Google Apps Script.

S’abonner
Notification pour
2 Commentaires
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires
punk_sportif

Bonjour et merci pour cette suite d’article.
Je pense qu’il faut voir dans la pratique cette feuille de cartographie des données, mais j’ai comme l’impression que c’est relativement laborieux et que je ne connais pas encore les subtilités de protections nécessaires aux partages des données.
Quel est le risque d’utiliser directement une requête du genre =query(importrange »adresse_feuille »;plage_bdd); »select ID_client, MAIL_CLIENT ») ?
Google sheets n’est-il pas encore un peu trop « jeune » pour gérer une BDD?
J’ai commencé à réfléchir / tester une application de gestion horaire de salariés, mais je vois que bien dans mes tests de quelques lignes, ça rame un peu… Alors j’imagine que quand il y aura 10000 enregistrements d’horaires dans la base, ça sera très très laborieux…
Sinon, ben… Vivement la suite 🙂 🙂