=QUERY
Base de données Avancé Excel

Formule QUERY Excel: Extraire et Analyser les Données

Maîtrisez la formule QUERY Excel pour extraire et analyser des données complexes. Découvrez syntaxe, exemples et cas d'utilisation en entreprise.

Syntaxe

=QUERY(data, query, [headers])

• data: La plage de cellules à interroger. • query: La requête à exécuter, écrite en langage de requête Google Visualization API. • headers: (Optionnel) Le nombre de lignes d'en-tête dans data.

Explication détaillée

Formule QUERY Excel: Extraction et Analyse Avancée de Données

Introduction

La formule QUERY dans Excel permet d'exécuter des requêtes complexes sur des données tabulaires en utilisant le langage de requête de l'API Google Visualization. C'est un outil puissant pour filtrer, trier, regrouper et manipuler des données sans avoir à écrire des macros VBA complexes. Bien qu'elle utilise un langage de requête différent de SQL, elle offre des fonctionnalités similaires pour l'extraction et l'analyse de données.

Syntaxe

La syntaxe de la formule QUERY est la suivante:

=QUERY(data, query, [headers])

  • data: La plage de cellules contenant les données à interroger. Cela peut être une plage nommée ou une référence de cellules.
  • query: La requête à exécuter, écrite dans le langage de requête de l'API Google Visualization. Cette requête définit les critères de sélection, le tri, le regroupement et d'autres opérations.
  • headers: (Optionnel) Un nombre indiquant le nombre de lignes d'en-tête dans la plage data. Si omis, la fonction tente de déterminer automatiquement le nombre de lignes d'en-tête. Il est recommandé de le spécifier explicitement.

Fonctionnement

La formule QUERY prend une plage de données et une chaîne de requête comme entrées. La requête est ensuite analysée et exécutée sur les données. Le résultat de la requête est renvoyé sous forme de tableau, qui peut ensuite être utilisé dans d'autres formules ou affiché directement dans la feuille de calcul. La puissance de QUERY réside dans sa capacité à effectuer des opérations complexes sur les données avec une syntaxe concise et déclarative.

Cas d'utilisation

  1. Analyse des ventes par région: Supposons que vous ayez un tableau de données de ventes avec les colonnes "Région", "Produit", "Ventes". Vous pouvez utiliser QUERY pour extraire les ventes totales par région: =QUERY(A1:C100, "SELECT A, SUM(C) GROUP BY A", 1)

  2. Filtrage des employés par département: Si vous avez une liste d'employés avec les colonnes "Nom", "Département", "Salaire", vous pouvez utiliser QUERY pour extraire les employés du département "Marketing": =QUERY(A1:C100, "SELECT A, B, C WHERE B = 'Marketing'", 1)

  3. Calcul de la moyenne des salaires par fonction: Avec une table de données des employés contenant les colonnes "Fonction", "Salaire", vous pouvez utiliser QUERY pour calculer la moyenne des salaires par fonction: =QUERY(A1:B100, "SELECT A, AVG(B) GROUP BY A", 1)

Bonnes pratiques

  • Utiliser des références de cellules pour les critères: Au lieu d'écrire les critères directement dans la requête, utilisez des références de cellules. Cela rend la formule plus flexible et facile à modifier.
  • Spécifier le nombre de lignes d'en-tête: Spécifier explicitement le nombre de lignes d'en-tête dans l'argument headers pour éviter les erreurs.
  • Tester la requête dans Google Sheets d'abord: Le langage de requête est plus facile à tester dans Google Sheets avant de l'implémenter dans Excel. La syntaxe est la même, mais le débogage est plus simple.
  • Commenter la requête: Ajouter des commentaires à la requête pour expliquer ce qu'elle fait. Cela rend la formule plus facile à comprendre et à maintenir.

Combinaisons

  • QUERY et IMPORTRANGE (Excel 365): Bien que IMPORTRANGE n'existe pas nativement dans Excel, des alternatives comme Power Query peuvent être utilisées pour importer des données, puis QUERY peut être appliqué pour filtrer et analyser les données importées.
  • QUERY et INDEX: Utilisez INDEX pour extraire des colonnes spécifiques du résultat de la requête.
  • QUERY et MATCH: Utilisez MATCH pour trouver la position d'une valeur dans le résultat de la requête.

Cas d'utilisation

Reporting financier

Analyse des ventes

Gestion des stocks

Exemples pratiques

Ventes par produit

Données : Colonne A: Produit (ex: Pomme, Banane, Orange) Colonne B: Quantité vendue Colonne C: Prix unitaire

=QUERY(A1:C10, "SELECT A, SUM(B) GROUP BY A", 1)

Calcule la quantité totale vendue pour chaque produit.

Résultat : Tableau avec le nom du produit et la quantité totale vendue.
Employés du département RH

Données : Colonne A: Nom de l'employé Colonne B: Département (ex: RH, Marketing, Ventes)

=QUERY(A1:B10, "SELECT A WHERE B = 'RH'", 1)

Extrait la liste des employés du département des Ressources Humaines.

Résultat : Liste des noms des employés travaillant au département RH.
Clients avec commandes supérieures à 1000€

Données : Colonne A: Nom du client Colonne B: Montant de la commande Colonne C: Date de la commande

=QUERY(A1:C10, "SELECT A, SUM(C) WHERE B > 1000 GROUP BY A", 1)

Liste des clients ayant passé des commandes supérieures à 1000€, avec le montant total de leurs commandes.

Résultat : Tableau avec le nom du client et le montant total de ses commandes supérieures à 1000€.

Conseils et astuces

Utilisez des noms de plages pour rendre vos formules plus lisibles et faciles à maintenir.

Décomposez les requêtes complexes en étapes plus petites pour faciliter le débogage.

Utilisez la fonction TEXT pour formater les dates et les nombres dans la requête.

Familiarisez-vous avec le langage de requête de l'API Google Visualization pour exploiter pleinement la puissance de la formule QUERY.

Erreurs courantes

#VALUE!

La requête contient une erreur de syntaxe ou une référence de colonne invalide.

Vérifiez attentivement la syntaxe de la requête et assurez-vous que les références de colonnes sont correctes. Utilisez des noms de colonnes (Col1, Col2...) dans Google Sheets et des lettres de colonnes (A, B...) dans Excel. Dans Excel, assurez-vous que les données sont bien structurées en tableau.

#REF!

La plage de données spécifiée dans la formule est invalide ou a été supprimée.

Vérifiez que la plage de données existe toujours et qu'elle est correctement référencée dans la formule.

Formules associées