Pourquoi Google Sheets pour les fonctions avancées
Google Sheets est l’alternative gratuite à Microsoft Excel, accessible depuis n’importe quel navigateur et parfaitement fonctionnelle sur mobile en 3G. Pour les freelances et petites entreprises au Sénégal qui n’ont pas de licence Microsoft 365, Google Sheets offre des fonctions avancées comparables à Excel — avec en plus la collaboration en temps réel et l’accès depuis le cloud.
Ce guide couvre les fonctions avancées qui transforment Google Sheets d’un simple tableur en un véritable outil de gestion professionnelle.
Fonctions de recherche
RECHERCHEV (VLOOKUP)
=RECHERCHEV(valeur; plage; colonne; FAUX)
Exemple : Retrouver le prix d’un produit dans un catalogue :
=RECHERCHEV(A2; Catalogue!A:D; 4; FAUX)
Cherche la valeur de A2 dans la première colonne de Catalogue, retourne la 4ème colonne (prix).
INDEX + EQUIV (INDEX/MATCH)
=INDEX(plage_résultat; EQUIV(valeur; plage_recherche; 0))
Avantage sur RECHERCHEV : Cherche dans toutes les directions. Exemple — retrouver un code client à partir du nom :
=INDEX(A2:A100; EQUIV("Ndiaye Transport"; B2:B100; 0))
RECHERCHEX (XLOOKUP) — exclusif Google Sheets
Google Sheets supporte RECHERCHEX même sans abonnement :
=RECHERCHEX(valeur; plage_recherche; plage_résultat; "Non trouvé")
Remplace avantageusement RECHERCHEV car plus simple et plus flexible.
Fonctions conditionnelles avancées
SOMME.SI.ENS (SUMIFS)
Additionner avec plusieurs critères :
=SOMME.SI.ENS(E:E; C:C; "Alimentation"; D:D; "Wave")
Additionne les montants (colonne E) où la catégorie est « Alimentation » ET le mode de paiement est « Wave ».
NB.SI.ENS (COUNTIFS)
=NB.SI.ENS(C:C; "Client actif"; D:D; "Dakar")
Compte le nombre de clients actifs à Dakar.
MOYENNE.SI.ENS (AVERAGEIFS)
=MOYENNE.SI.ENS(F:F; C:C; "Vêtements"; B:B; ">="&DATE(2025;1;1))
Calcule la moyenne des ventes de vêtements depuis janvier 2025.
SI imbriqués et IFS
Google Sheets supporte la fonction IFS qui simplifie les SI imbriqués :
=IFS(A2>=90;"Excellent"; A2>=75;"Bien"; A2>=50;"Passable"; A2<50;"Insuffisant")
Équivalent à 4 niveaux de SI imbriqués, mais beaucoup plus lisible.
Fonctions texte avancées
| Fonction | Usage | Exemple | Résultat |
|---|---|---|---|
SPLIT |
Séparer du texte par un délimiteur | =SPLIT("Moussa Diallo"; " ") |
Moussa | Diallo (en 2 cellules) |
JOIN |
Combiner des cellules avec séparateur | =JOIN(", "; A1:A5) |
"Dakar, Thiès, Mbour, Ziguinchor, Kaolack" |
REGEXMATCH |
Vérifier un format (regex) | =REGEXMATCH(A2; "^7[5-8]\d{7}$") |
VRAI si c'est un numéro sénégalais |
REGEXEXTRACT |
Extraire un pattern | =REGEXEXTRACT(A2; "\d+") |
Extrait les chiffres d'un texte |
SUBSTITUTE |
Remplacer du texte | =SUBSTITUTE(A2; "FCFA"; "") |
Retire "FCFA" du texte |
SPLIT est exclusif à Google Sheets et extrêmement utile pour nettoyer des données importées (séparer prénom/nom, adresse/ville, etc.).
QUERY : la fonction la plus puissante de Google Sheets
QUERY permet d'interroger vos données avec un langage similaire à SQL. C'est la fonction phare de Google Sheets, sans équivalent dans Excel.
=QUERY(plage; "requête"; en_têtes)
Exemples pratiques
Filtrer les clients de Dakar :
=QUERY(A1:F100; "SELECT A, B, D WHERE C = 'Dakar' ORDER BY B"; 1)
Retourne les colonnes A (code), B (nom), D (téléphone) pour les clients dont la ville (C) est Dakar, triés par nom.
Total des ventes par catégorie :
=QUERY(A1:E500; "SELECT C, SUM(E) WHERE D = 'Dépense' GROUP BY C ORDER BY SUM(E) DESC LABEL SUM(E) 'Total'"; 1)
Crée un résumé des dépenses par catégorie, triées du plus gros au plus petit.
Ventes du mois en cours :
=QUERY(A1:E500; "SELECT * WHERE A >= date '"&TEXTE(DEBUT_MOIS;"yyyy-MM-dd")&"' AND D = 'Revenu'"; 1)
Top 10 des plus gros montants :
=QUERY(A1:E500; "SELECT B, C, E ORDER BY E DESC LIMIT 10"; 1)
Syntaxe QUERY essentielle
| Clause | Rôle | Exemple |
|---|---|---|
SELECT |
Colonnes à afficher | SELECT A, B, D |
WHERE |
Condition de filtre | WHERE C = 'Dakar' |
GROUP BY |
Regrouper les données | GROUP BY C |
ORDER BY |
Trier | ORDER BY E DESC |
LIMIT |
Nombre de résultats | LIMIT 10 |
LABEL |
Renommer les en-têtes | LABEL SUM(E) 'Total' |
SUM, AVG, COUNT, MAX, MIN |
Fonctions d'agrégation | SELECT C, SUM(E) |
IMPORTRANGE : connecter plusieurs fichiers
IMPORTRANGE importe des données depuis un autre fichier Google Sheets :
=IMPORTRANGE("URL_du_fichier"; "Feuille!A1:D100")
Usage : Un fichier central consolide les données de plusieurs fichiers départementaux (Ventes, Marketing, Finance). Chaque département travaille dans son propre fichier, et le dashboard central tire les données automatiquement.
Note : La première utilisation nécessite une autorisation d'accès. Cliquez sur "Autoriser l'accès" quand le message apparaît.
IMPORTDATA, IMPORTHTML, IMPORTXML : importer du web
| Fonction | Usage | Exemple |
|---|---|---|
IMPORTDATA |
Importer un fichier CSV depuis une URL | =IMPORTDATA("https://exemple.com/data.csv") |
IMPORTHTML |
Importer un tableau ou une liste depuis une page web | =IMPORTHTML("https://exemple.com"; "table"; 1) |
IMPORTXML |
Extraire des données via XPath | =IMPORTXML("URL"; "//h2") |
Ces fonctions sont exclusives à Google Sheets et permettent de créer des dashboards qui se mettent à jour automatiquement avec des données en ligne.
ARRAYFORMULA : appliquer une formule à toute une colonne
Au lieu de copier une formule sur 500 lignes, ARRAYFORMULA l'applique automatiquement :
=ARRAYFORMULA(SI(A2:A="";"";A2:A*B2:B))
Cette formule unique en ligne 2 calcule le produit A×B pour toutes les lignes automatiquement. Quand vous ajoutez une nouvelle ligne de données, le calcul s'applique instantanément.
Combiné avec d'autres fonctions :
=ARRAYFORMULA(SI(A2:A="";"";SI(C2:C>500000;"Premium";"Standard")))
Catégorise automatiquement tous les clients selon leur montant.
Validation des données et listes déroulantes
- Sélectionnez la plage de cellules
- Données > Validation des données
- Critère : Liste d'éléments ou Liste à partir d'une plage
- Saisissez les valeurs séparées par des virgules ou pointez vers une plage
Astuce : Google Sheets affiche nativement les listes déroulantes avec des puces colorées (chips). Utilisez les couleurs pour distinguer visuellement les statuts (Payé = vert, En attente = orange, En retard = rouge).
Mise en forme conditionnelle
- Sélectionnez la plage
- Format > Mise en forme conditionnelle
- Choisissez la règle et le format
Règles les plus utiles
| Règle | Condition | Format |
|---|---|---|
| Montants élevés | Le texte ou nombre est > 500 000 | Fond vert, texte gras |
| Retard de paiement | Formule : =$E2="En retard" |
Fond rouge clair |
| Date dépassée | Formule : =$D2 |
Texte rouge |
| Lignes alternées | Formule : =MOD(LIGNE();2)=0 |
Fond gris très clair |
| Cellules vides | Est vide | Fond jaune (à remplir) |
Google Apps Script : automatiser Google Sheets
Apps Script est le langage de programmation intégré à Google Sheets (équivalent des macros VBA dans Excel). Accédez via Extensions > Apps Script.
Exemple : envoyer un email automatique
function envoyerRappels() {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
for (var i = 1; i < data.length; i++) {
var statut = data[i][4]; // Colonne E = statut
var email = data[i][3]; // Colonne D = email
var nom = data[i][1]; // Colonne B = nom
var montant = data[i][5]; // Colonne F = montant
if (statut === "En retard") {
GmailApp.sendEmail(
email,
"Rappel - Facture en attente",
"Bonjour " + nom + ",\n\nNous vous rappelons que votre facture de " + montant + " FCFA est en attente de règlement.\n\nCordialement,\nDiallo Digital"
);
}
}
}
Automatiser l'exécution : Extensions > Apps Script > Déclencheurs (icône horloge) > Ajouter un déclencheur. Configurez pour s'exécuter chaque lundi à 9h.
Tableaux croisés dynamiques dans Google Sheets
- Sélectionnez vos données
- Insertion > Tableau croisé dynamique
- Choisissez "Nouvelle feuille" ou "Feuille existante"
- Dans le panneau de droite, configurez :
- Lignes : La dimension de regroupement (ex : Catégorie de dépense)
- Colonnes : Optionnel — sous-groupes (ex : Mois)
- Valeurs : Ce que vous mesurez (ex : SOMME du Montant)
- Filtre : Conditions de filtrage
Le TCD se met à jour automatiquement quand les données source changent.
Google Sheets vs Excel : quelle fonction pour quoi
| Besoin | Google Sheets | Excel |
|---|---|---|
| Collaboration temps réel | ★★★★★ Natif | ★★★☆☆ (OneDrive requis) |
| Fonctions de recherche | QUERY + RECHERCHX | RECHERCHEV + INDEX/EQUIV |
| Automatisation | Apps Script (JavaScript) | VBA (Visual Basic) |
| Import web | ★★★★★ IMPORTHTML/XML natif | ★★★☆☆ Power Query |
| Performance gros fichiers | ★★☆☆☆ Lent >50 000 lignes | ★★★★★ Supporte 1M+ lignes |
| Graphiques avancés | ★★★☆☆ Basiques mais suffisants | ★★★★★ Très avancés |
| Macros/VBA | Apps Script (JavaScript) | VBA (plus mature) |
| Hors ligne | Extension Chrome requise | Natif |
Checklist : maîtriser Google Sheets avancé
- ☐ RECHERCHEV et INDEX/EQUIV pour les recherches
- ☐ QUERY pour les requêtes de données complexes
- ☐ SOMME.SI.ENS, NB.SI.ENS pour les calculs conditionnels
- ☐ ARRAYFORMULA pour appliquer des formules à des colonnes entières
- ☐ IMPORTRANGE pour connecter plusieurs fichiers
- ☐ SPLIT, REGEXMATCH pour le traitement de texte
- ☐ Tableaux croisés dynamiques pour l'analyse
- ☐ Mise en forme conditionnelle pour la visualisation
- ☐ Validation des données et listes déroulantes
- ☐ Apps Script pour l'automatisation (envoi emails, notifications)