Comment utiliser la référence de cellule dans la requête Google Sheets

Utiliser la référence de cellule dans la requête Google Sheets peut sembler un peu délicat, mais une fois que vous commencez à l’utiliser, cela devient facile à suivre. Utilisez ce tutoriel comme guide de référence chaque fois que vous souhaitez utiliser la référence de cellule comme critère/condition dans la clause WHERE de la requête dans Google Sheets.

La clause WHERE dans la fonction Query de Sheets est utile pour extraire uniquement les lignes correspondant à une condition spécifiée.

Vous pouvez entrer la condition spécifiée directement dans une formule Query ou l’entrer dans une cellule et y faire référence dans la formule Query. Je détaille cette dernière option, c’est-à-dire la condition spécifiée dans une cellule, dans ce tutoriel Google Spreadsheet.

En tant que note supplémentaire, dans la clause SELECT, PIVOT et GROUP BY de la requête, ce que nous utilisons ne sont pas des références de cellule mais des identifiants de colonne comme A, B ou Col1, Col2, etc. Ne confondez donc pas cela avec l’utilisation de la référence de cellule dans la clause WHERE.

De plus, lorsque nous utilisons « Col1 » au lieu de « A » comme identifiant de colonne, nous pouvons bien sûr utiliser une référence de cellule pour faire référence dynamiquement à cette colonne.

Cela s’applique aux autres colonnes dans les données Query. Vous pouvez trouver ces détails dans mon précédent tutoriel intitulé « Comment obtenir une référence de colonne dynamique dans la requête Google Sheets ».

Comme je l’ai mentionné précédemment, nous pouvons faire référence à une condition dans une cellule dans la clause WHERE de la requête Google Sheets. Lorsque nous faisons référence à une cellule contenant une condition, nous devons utiliser au moins un des opérateurs de comparaison simples ou complexes.

Référence de cellule dans les opérateurs de comparaison simples de Sheets Query

Dans mon tutoriel intitulé « Exemples d’utilisation des littéraux dans la requête Google Sheets », j’ai expliqué comment utiliser correctement les littéraux en tant que référence de cellule dans la requête Google Sheets. Mais cela ne concerne que les opérateurs de comparaison simples tels que <=, <, >, >=, =, !=, <>.

Les littéraux, qu’est-ce que c’est ?

Les littéraux sont des valeurs telles que des chaînes de caractères, des nombres, des valeurs booléennes VRAI/FAUX ou différents types de date/heure utilisés pour les comparaisons ou les affectations.

Syntaxe de la clause WHERE de la requête – Critère interne (Littéral de date) :

=Query(A2:B,"Select * where A < date '2019-08-31'")

Syntaxe de la clause WHERE de la requête – Critère en tant que référence de cellule (Littéral de date) :

=Query(A2:B,"Select * where A <= date '"&TEXT(D1,"yyyy-mm-dd")&"'")

Pour plus d’exemples impliquant d’autres littéraux, veuillez consulter le tutoriel lié ci-dessus.

Référence de cellule dans les opérateurs de comparaison complexes de Sheets Query

L’utilisation d’opérateurs de comparaison complexes vise à effectuer des comparaisons de chaînes de caractères ou de sous-chaînes dans une requête.

Dans différents tutoriels, j’ai expliqué l’utilisation des opérateurs de comparaison complexes dans la requête. Je parle de :

  1. Contains (Contient)
  2. Matches (Correspond)
  3. Like (Similaire à)
  4. Starts With (Commence par)
  5. Ends With (Se termine par)

… la correspondance de chaînes de caractères ou de sous-chaînes. Mais dans ces tutoriels, je n’ai pas inclus comment utiliser la référence de cellule comme condition avec ces opérateurs dans la clause WHERE de la requête.

Opérateur « Contains » – Critère/Condition à partir d’une cellule

Veuillez vérifier : Correspondance de sous-chaîne CONTIENT dans la requête Google Sheets pour une correspondance partielle.

J’ai les données suivantes dans la colonne A. Je veux filtrer les valeurs de la colonne A en fonction du nom du matériau de manière dynamique, comme indiqué dans la requête.

La formule Query dans la cellule C2 utilise la correspondance de sous-chaîne « Contains » pour correspondre partiellement au critère dans la cellule C1.

  • Vous pouvez aimer : Plusieurs « Contains » dans la clause WHERE de la requête Google Sheets.

Opérateur « Matches » – Critère/Condition à partir d’une cellule

Veuillez lire : Correspondance d’expression rationnelle avec la requête Google Sheets.

J’espère que vous avez lu le tutoriel ci-dessus. C’est essentiel car « Matches » est une correspondance d’expression rationnelle dans la requête Google Sheets et il y a beaucoup à apprendre. Ici, je ne donne que deux variations de la correspondance d’expression rationnelle.

Comment utiliser une référence de cellule dans la correspondance d’expression rationnelle dans la requête Google Sheets ?

Les formules Query ci-dessous utilisent la correspondance de sous-chaîne « Matches » avec le critère provenant de la cellule C1.

Opérateur « Like » – Critère à partir d’une cellule

Veuillez lire : Comment utiliser l’opérateur « LIKE » de chaîne dans la requête Google Sheets.

Voyons comment utiliser une référence de cellule en tant que critère avec l’opérateur « Like » dans la requête Google Sheets.

Avant de commencer, je vous demande de consulter mon tutoriel ci-dessus sur l’utilisation de l’opérateur « Like » car j’ai détaillé l’utilisation des deux caractères génériques disponibles (le pourcentage et le souligné).

Ici, je ne répète pas cela et je vous donne simplement deux exemples pour vous faire comprendre comment utiliser une référence de cellule en tant que critère/condition de l’opérateur « Like » dans la requête.

  • Vous pouvez aimer : Utilisation du caractère générique « % » dans l’opérateur « Like » de la requête avec référence de cellule – Syntaxe (formule dans la cellule C2)

Veuillez accorder une attention particulière au critère utilisé dans la cellule C1. Le caractère générique « % » est utilisé pour une correspondance de plusieurs caractères dans la requête.

Critère « Commence par » et « Se termine par » à partir d’une cellule

Je sais que maintenant, vous avez une bonne idée de la syntaxe de la requête en utilisant une référence de cellule.

Je conclus ce tutoriel avec deux formules supplémentaires qui expliquent comment utiliser une référence de cellule dans les opérateurs « Commence par » et « Se termine par » de la requête.

  • Syntaxe de référence de cellule dans « Commence par » :

Veuillez lire : Correspondance de préfixe « Commence par » et « Ne commence pas par » dans la requête.

Tapez « 70MT » dans la cellule C1 et utilisez la requête ci-dessous pour renvoyer les chaînes dans la colonne A qui commencent par la sous-chaîne « 70MT ».

  • Syntaxe de référence de cellule dans « Se termine par » :

Veuillez lire : Correspondance de suffixe « Se termine par » et « Ne se termine pas par » dans la requête.

La syntaxe de référence avec cellule se termine presque de la même manière que celle de « Commence par » dans la requête.

Avant d’utiliser cette formule, entrez le critère « Project 2 » dans la cellule C1 pour renvoyer toutes les valeurs de la colonne A se terminant par la sous-chaîne « Project 2 ».

Conclusion

Dans tous les exemples ci-dessus, vous pouvez rendre les formules insensibles à la casse en enveloppant l’identifiant de colonne A avec la fonction Lower et en utilisant des lettres minuscules dans le critère.

À titre d’exemple, prenons un exemple de la syntaxe de correspondance. Ici, le critère est « .project 1|.project 2 ». Voyez les changements dans la formule.

=query(A2:A,"Select A where lower(A) Matches '"&C1&"'",0)

Vous pouvez également nier la correspondance de chaîne en utilisant l’opérateur Not dans la requête.

Exemple :

=query(A2:A,"Select A where Not A Matches '"&C1&"'",0)

Et voilà. Amusez-vous bien! Pour plus d’informations sur Google Sheets et d’autres astuces utiles, rendez-vous sur Crawlan.com.

Articles en lien