Top 5 des fonctions avancées pour l'analyse de données dans Google Sheets
7 août 2026
Une fois passés SUM, IF et les recherches basiques, l'analyse de données dans Google Sheets consiste surtout à remodeler des tableaux : filtrer sans détruire la source, agréger avec des critères lisibles, faire déborder des résultats sur une colonne, et enrichir des lignes depuis d'autres feuilles. Ces cinq fonctions reviennent sans cesse dans le travail d'analyse réel — chacune avec un exemple court et un lien pour aller plus loin.
1. QUERY — de l'analyse façon SQL dans une cellule
QUERY exécute un petit langage de type SQL sur une plage. Filtrez, triez, regroupez et agrégez en une seule formule au lieu d'empiler FILTER + SORT + SUMIF.
=QUERY(A1:E500, "SELECT A, SUM(E) WHERE C = 'EU' GROUP BY A ORDER BY SUM(E) DESC", 1)
Cela renvoie chaque produit (colonne A) vendu dans la région EU, le chiffre d'affaires total (colonne E), trié du plus élevé au plus bas — en traitant la ligne 1 comme en-têtes. Les colonnes dans la chaîne de requête sont lettrées par rapport à la plage passée en argument, pas par lettres absolues de la feuille.
Utilisez QUERY quand vous avez besoin d'une analyse en plusieurs étapes (filtre + regroupement + tri) au même endroit. Pour un tour complet de SELECT, WHERE, GROUP BY, LABEL et PIVOT, voir Maîtriser la fonction QUERY dans Google Sheets.
2. FILTER — ne garder que les lignes qui comptent
FILTER renvoie un sous-ensemble dynamique d'une plage. La source reste intacte ; le résultat déborde en tableau que vous pouvez mettre en graphique, croiser ou enchaîner dans une autre formule.
=FILTER(A2:D1000, C2:C1000 = "active", D2:D1000 >= 1000)
Cela conserve les lignes dont le statut est active et le montant est au moins 1000. Plusieurs conditions sont combinées en ET quand vous les passez en arguments séparés. Combinez avec SORT pour des vues classées sans colonnes d'aide :
=SORT(FILTER(A2:D1000, C2:C1000 = "active"), 4, FALSE)
Cela filtre les lignes actives, puis trie par la colonne 4 décroissante. FILTER est le bon réflexe pour une coupe dynamique d'un tableau ; passez à QUERY quand il faut aussi regrouper ou agréger façon SQL. D'autres schémas, y compris des tableaux de bord avec recherches, sont dans Utiliser FILTER + XLOOKUP pour des tableaux de bord dynamiques.
3. ARRAYFORMULA — une formule pour toute une colonne
ARRAYFORMULA fait opérer des formules mono-cellule sur des plages entières, pour arrêter de tirer la poignée de recopie et de tout casser quand on insère des lignes.
=ARRAYFORMULA(IF(A2:A1000="", "", B2:B1000 * C2:C1000))
Placez cela en D2 et les totaux de ligne se remplissent pour chaque ligne non vide de A. Le même principe sert au nettoyage et aux indicateurs :
=ARRAYFORMULA(IF(A2:A="", "", TRIM(CLEAN(A2:A))))
Les fonctions qui débordent déjà (FILTER, SORT, SEQUENCE, UNIQUE) n'ont pas besoin d'enveloppe. Utilisez ARRAYFORMULA pour l'arithmétique, IF et les fonctions texte appliquées ligne par ligne sur une colonne. Des schémas plus poussés et des outils associés (SEQUENCE, SORTN, etc.) sont dans Maîtriser les formules matricielles dans Google Sheets.
4. XLOOKUP — enrichir et joindre des tables d'analyse
XLOOKUP est le remplaçant moderne de VLOOKUP : recherchez dans n'importe quelle colonne, renvoyez n'importe quelle colonne, et gérez proprement les non-correspondances.
=XLOOKUP(A2, Products!A:A, Products!C:C, "Inconnu")
Cela ramène une catégorie produit depuis une feuille de référence dans votre table d'analyse, avec "Inconnu" si l'identifiant manque — sans bruit #N/A dans les graphiques ou les tableaux croisés. Pour des colonnes entières d'un coup :
=ARRAYFORMULA(IF(A2:A="", "", XLOOKUP(A2:A, Products!A:A, Products!C:C, "Inconnu")))
Par rapport à VLOOKUP, vous n'êtes pas contraint de chercher dans la colonne de gauche, et vous ne comptez plus les colonnes avec un index fragile. Pour une comparaison avec INDEX/MATCH, voir XLOOKUP vs INDEX/MATCH dans Google Sheets (2026) et le guide XLOOKUP.
5. UNIQUE — valeurs distinctes pour dimensions et contrôles
UNIQUE renvoie les lignes (ou colonnes) distinctes d'une plage. C'est ainsi que l'on construit des listes de dimensions, que l'on valide des catégories, et que l'on prépare des entrées pour des graphiques ou d'autres étapes FILTER/QUERY.
=UNIQUE(C2:C1000)
Liste chaque statut (ou région, ou SKU) une seule fois. Triez le résultat quand vous voulez un ordre stable :
=SORT(UNIQUE(C2:C1000))
Le troisième argument optionnel ne garde que les valeurs qui n'apparaissent qu'une fois — utile pour repérer des entrées isolées ou des identifiants orphelins :
=UNIQUE(A2:A1000, FALSE, TRUE)
Associez UNIQUE à COUNTIF ou QUERY pour compter la fréquence par catégorie, ou à FILTER pour des listes de choix qui se mettent à jour avec la source. Les habitudes de nettoyage et de remodelage qui précèdent souvent UNIQUE sont dans Nettoyage de données, tri et astuces d'analyse dans Google Sheets.
Comment ces cinq fonctions s'enchaînent
Un flux d'analyse typique en utilise plusieurs :
- Nettoyer et normaliser l'export brut (
TRIM/CLEAN, validation). - Construire les catégories distinctes avec
UNIQUE. - Découper le jeu de travail avec
FILTER(ouQUERYcomplète pour regrouper). - Enrichir les lignes avec
XLOOKUPsur des tables de référence. - Faire déborder les colonnes calculées avec
ARRAYFORMULAplutôt qu'avec des formules recopiées.
Vous n'avez pas besoin des cinq dans chaque feuille. Commencez par FILTER + XLOOKUP pour des vues interactives, ajoutez QUERY quand les synthèses s'alourdissent, et utilisez ARRAYFORMULA / UNIQUE pour garder le modèle maintenable quand les données grossissent.
Lectures associées
- Maîtriser la fonction QUERY dans Google Sheets
- Utiliser FILTER + XLOOKUP pour des tableaux de bord dynamiques
- Maîtriser les formules matricielles dans Google Sheets
- Nettoyage de données, tri et astuces d'analyse dans Google Sheets
- Références de fonctions : QUERY, FILTER, ARRAYFORMULA, XLOOKUP, UNIQUE