Extraire la première lettre de chaque mot dans Google Sheets – Formules matricielles

Si vous cherchez une formule matricielle pour extraire la première lettre de chaque mot dans Google Sheets, voici deux formules à utiliser. Parmi celles-ci, l’une est très astucieuse et facile à utiliser.

Pour extraire la première lettre de chaque mot, nous suivons généralement les étapes suivantes dans Google Sheets (je ne vais pas les suivre pour écrire la formule matricielle).

Supposons que la cellule A2 contienne la chaîne « moyen poids faisceau ».

Je veux extraire les lettres « m », « p » et « f » et les joindre comme une abréviation telle que « mpf ».

Habituellement, nous résolvons le problème ci-dessus en utilisant la fonction SPLIT, LEFT et JOIN comme suit et nous la faisons glisser vers le bas pour l’appliquer à la chaîne dans la ligne suivante.

Étapes (explication de la formule) :

  1. Nous pouvons utiliser la fonction SPLIT pour diviser la chaîne en trois parties en fonction du délimiteur d’espace.
    SPLIT(A2," ")

  2. Ensuite, en utilisant la fonction LEFT, nous pouvons extraire la première lettre de chaque mot.
    ArrayFormula(left(split(A2," "),1))

J’ai utilisé la fonction ArrayFormula dans la formule ci-dessus car nous voulons extraire la première lettre de plus d’un mot (splitté).

  1. Combinez simplement le résultat.
    JOIN("",ArrayFormula(left(split(A2," "),1)))

Il est conseillé d’envelopper la formule avec IFERROR pour éviter les erreurs en cas de valeurs absentes dans A2.

La formule ci-dessus est la meilleure méthode non matricielle pour extraire la première lettre de chaque mot dans Google Sheets.

Cependant, cette formule présente un problème.

Puisque nous avons utilisé la fonction JOIN, il peut être difficile de coder une formule matricielle suivant la méthode ci-dessus.

Nous ne pouvons utiliser qu’une partie de la formule que j’expliquerai plus tard.

J’ai deux solutions alternatives au problème ci-dessus. L’une est très astucieuse et facile à utiliser par rapport à la méthode non matricielle ci-dessus.

Deux formules matricielles pour extraire la première lettre de chaque mot dans Google Sheets

J’ai deux formules ci-dessous intitulées Formule matricielle 1 et Formule matricielle 2.

Je recommande la formule matricielle 1.

Si vous ne vous souciez pas de la sensibilité à la casse des lettres extraites, utilisez-la. C’est la manière la plus simple d’extraire la première lettre de chaque mot dans Google Sheets.

La formule matricielle 1 convertira toutes les lettres extraites en MAJUSCULES. Si vous le souhaitez, vous pouvez la rendre en MINUSCULES.

Utilisez la formule matricielle 2 si vous recherchez une formule sensible à la casse. Cela signifie que les lettres extraites seront identiques à celles de la chaîne. Elle ne changera pas la casse des lettres.

Formule matricielle 1

Considérons la même chaîne dans la cellule A2, qui est « moyen poids faisceau ».

Voici la manière la plus simple d’abréger la chaîne ci-dessus dans Google Sheets.

Étapes :

  1. Utilisez la fonction PROPER pour mettre la première lettre de chaque mot en majuscule et le reste des lettres en minuscule.
    PROPER(A2)

Le résultat sera « Moyen Poids Faisceau ».

  1. À l’aide de REGEXREPLACE, nous pouvons extraire uniquement les lettres majuscules de la chaîne ci-dessus.
    REGEXREPLACE(proper(A2),"[^A-Z]+","")

Comme il ne contient pas la fonction JOIN, nous pouvons facilement en faire une formule matricielle.
ArrayFormula(REGEXREPLACE(proper(A2:A),"[^A-Z]+",""))

Formule matricielle 2

Pour obtenir une autre formule matricielle permettant d’extraire la première lettre de chaque mot dans Google Sheets, suivez les étapes ci-dessous.

Nous allons ici SPLIT les chaînes, puis extraire la première lettre en utilisant LEFT. Au lieu de JOIN, nous utiliserons QUERY pour combiner les lettres extraites.

  1. Filtrons d’abord la plage A2:A pour ignorer les lignes vides.
    FILTER(A2:A,A2:A<>"")

  2. Divisez les chaînes filtrées.
    ArrayFormula(split(filter(A2:A,A2:A<>"")," "))

  3. Extrayons la première lettre de chaque mot.
    ArrayFormula(left(split(filter(A2:A,A2:A<>"")," "),1))

  4. À l’aide de QUERY, nous pouvons combiner les lettres extraites. J’ai un tutoriel détaillé sur l’utilisation de QUERY pour la combinaison de chaînes ici – La formule matricielle souple pour combiner des colonnes dans Google Sheets.
    4.1 Utilisez TRANSPOSE pour changer l’orientation du résultat de la formule ci-dessus.
    TRANSPOSE(ArrayFormula(left(split(filter(A2:A,A2:A<>"")," "),1)))
    4.2 Utilisez QUERY pour combiner les lettres.
    query(transpose(ArrayFormula(left(split(filter(A2:A,A2:A<>"")," "),1))),,9^9)
    4.3 Transposez à nouveau.
    transpose(query(transpose(ArrayFormula(left(split(filter(A2:A,A2:A<>"")," "),1))),,9^9))

La formule ci-dessus est la formule matricielle pour extraire la première lettre de chaque mot dans Google Sheets.

Mais attendez. Regardez les résultats. La requête laisse des espaces blancs entre les lettres combinées.

Vous pouvez utiliser REGEXREPLACE ou SUBSTITUTE pour les supprimer.
ArrayFormula(substitute(transpose(query(transpose(left(split(filter(A2:A,A2:A<>"")," "),1)),,9^9))," ",""))

Note : Si vous avez des cellules vides entre les valeurs dans A2:A, utilisez la formule ci-dessous. Dans cette formule, j’ai omis le filtre et inclus IFERROR après le SPLIT.
ArrayFormula(substitute(transpose(query(transpose(left(iferror(split(A2:A," ")),1)),,9^9))," ",""))

J’espère que vous avez compris comment extraire la première lettre de chaque mot dans Google Sheets.

Merci de me rester fidèle. Profitez-en bien !

Articles en lien