Google Sheets : Afficher les en-têtes automatiquement avec QUERY

 

📊 Google Sheets : Filtrer & Afficher les en-têtes automatiquement avec QUERY

L’une des erreurs les plus fréquentes lorsqu’on utilise la fonction QUERY dans Google Sheets, c’est de ne pas afficher les titres des colonnes (en-têtes) dans les résultats. Pourtant, il existe une méthode simple et fiable pour les inclure automatiquement.

Dans cet article, je vous montre comment utiliser la fonction QUERY avec en-têtes sans bidouillage manuel.


🧠 Rappel : À quoi sert QUERY ?

La fonction QUERY permet d’extraire et filtrer des données depuis une plage (tableau), en utilisant un langage proche de SQL (Select, Where, Order By, etc.).


🛠 Le problème

Par défaut, si vous utilisez une plage qui commence à la 2e ligne (ex. A2:S), la fonction QUERY ne renverra pas les en-têtes, car elle considère que la ligne 1 est hors de sa portée.


✅ La bonne méthode : inclure les en-têtes dans la plage

🧾 Exemple de formule fonctionnelle :

excel

=SIERREUR( QUERY( 'Ren-Contrat'!$A$1:S; "select Col2, Col3, Col4 where Col1 = '" & $G$9 & "' and Col2 is not null and Col3 is not null and Col4 is not null"; 1 ); "" )

🧩 Explication ligne par ligne :

  • 'Ren-Contrat'!$A$1:S : on inclut la ligne 1 qui contient les en-têtes.

  • select Col2, Col3, Col4 : on choisit les colonnes à afficher.

  • where Col1 = '" & $G$9 & "' : on filtre selon une valeur de recherche en G9.

  • and ColX is not null : on n'affiche que les lignes où les colonnes ne sont pas vides.

  • 1 : on indique à QUERY que la 1re ligne contient les en-têtes.

  • SIERREUR(...;"") : si aucune ligne ne correspond, la cellule reste vide au lieu d’afficher une erreur.


🎁 Résultat :

Le tableau s’affiche avec :

  • les noms de colonnes en haut

  • les données filtrées selon vos critères

  • aucune ligne vide


🧠 Astuce bonus : pourquoi ne pas commencer à $A$2 ?

Si vous commencez à A2:S, vous devez ajouter manuellement les titres avec une formule du type :

excel

={ {"Nom", "Date", "Montant"}; QUERY(...; ...; 0) }

Mais ce n’est pas dynamique : si les titres changent, il faut les modifier à la main. La méthode avec $A$1 et 1 est plus souple et automatisée.


📌 À retenir

Mauvaise pratiqueBonne pratique
QUERY(...; plage sans ligne 1; 0)QUERY(...; plage avec ligne 1; 1)

Commentaires

Posts les plus consultés de ce blog

🛠 Utilisation de CustomUIEditor pour Personnaliser le Ruban Excel

🗓️ Simulateur de Congés et Calendrier Collaboratif sous Google Sheets

Explication VBA : Facturation automatique Gestion client