Comment utiliser la fonction Proper dans la requête Google Sheets

La fonction Proper n’est pas une fonction scalaire prise en charge dans la requête. Alors, comment utiliser la fonction Proper dans la requête Google Sheets ?

Je vais vous expliquer cela avec deux exemples ci-dessous.

La requête Google Sheets prend en charge les fonctions scalaires upper() et lower(), mais pas proper().

Pour apprendre comment utiliser les fonctions scalaires upper() et lower() dans une requête, veuillez consulter mon tutoriel lié ci-dessous.

Must Read : Comment appliquer un changement en masse dans les cas dans Google Sheets à l’aide d’une fonction de requête.

La fonction Proper est disponible dans Google Sheets mais pas dans la requête. Vous pouvez l’utiliser comme suit :

=proper("info inspired")

Résultat : « Info Inspired »

La syntaxe est la suivante :

PROPER(texte_a_capitaliser)

La fonction Proper() dans Google Sheets va changer la casse de la première lettre de chaque mot en majuscule et le reste en minuscule. Maintenant, revenons à la façon d’utiliser la fonction Proper dans une requête avec une solution de contournement.

Must Read : Changer le texte en majuscules, minuscules et en cas de phrase.

Fonction Proper dans la requête Google Sheets

Dans les données d’exemple ci-dessous, les noms ne sont pas grammaticalement corrects. Nous devons saisir les noms des personnes dans le format approprié (bien qu’il y ait des exceptions).

Mais notre problème est différent. Le même nom apparaît plusieurs fois avec des cas de lettres non identiques.

Cela affecterait le regroupement et le total dans la requête Google Sheets.

La solution consiste à utiliser les fonctions scalaires lower() ou upper() dans la clause Select comme suit :

=query(A1:B8,"Select upper(A), sum(B) group by upper(A)",1)

Si vous utilisez la requête comme suit, le résultat ne sera pas correct :

=query(A1:B8,"Select A, sum(B) group by A",1)

J’ai démontré la même chose dans la capture d’écran ci-dessous.

Mais si vous souhaitez que le résultat regroupé soit en format Proper, la formule sera la suivante :

=ArrayFormula(query({proper(A1:A8),B1:B8},"Select Col1, sum(Col2) group by Col1",1))

La formule ci-dessus est un exemple de l’utilisation de la fonction Proper dans la requête Google Sheets.

Dans cette formule, j’ai créé une plage virtuelle contenant les noms en format Proper dans la colonne A et le montant dans la colonne B.

Pour cela, en plus de la fonction Proper, j’ai utilisé les accolades et ArrayFormula.

Remarque : Au lieu des accolades, nous pouvons également utiliser HSTACK. Dans ce cas, vous pouvez remplacer {proper(A1:A8),B1:B8} par hstack(proper(A1:A8),B1:B8).

Il y a un autre scénario.

Si vous utilisez une requête uniquement pour filtrer un tableau, ou si vous avez une sortie de requête contenant uniquement des chaînes de texte, vous pouvez envelopper la requête avec la fonction Proper() comme suit :

Dans mes données d’exemple (je passe la capture d’écran), la colonne A contient les noms des employés en lettres de casse mixte.

Le contenu de la colonne B est simplement les lettres A et P : A pour « absent » et P pour « présent ».

Cela signifie que les deux colonnes contiennent des chaînes de texte.

La formule de requête ci-dessous filtre tous les employés présents :

=query(A1:B12,"Select A where B='P'",1)

Pour mettre les noms en format Proper, enveloppez la formule avec la fonction proper() et utilisez ArrayFormula.

=ArrayFormula(proper(query(A1:B12,"Select A where B='P'",1)))

Related: Comment formater la date, l’heure et le nombre dans la requête Google Sheets.

Articles en lien