Compter un caractère spécifique dans Google Sheets

Pour compter un caractère spécifique dans Google Sheets, nous pouvons utiliser des formules combinées. Le caractère spécifique peut être une lettre (sensible à la casse ou insensible à la casse), un chiffre, un caractère spécial tel qu’un tube, une onde, un espace blanc, un retour à la ligne, etc. J’ai deux types de combinaisons (formules) pour cela. L’une utilise des expressions régulières et l’autre n’en utilise aucune. Mais les deux formules utilisent la fonction Len. La bonne nouvelle est que la seconde fonctionnera également dans Excel.

Si vous êtes utilisateur de Google Sheets ou d’Excel, vous pouvez utiliser ma formule pour compter des caractères spécifiques dans votre feuille de calcul.

Pourquoi compter un caractère spécifique dans une feuille de calcul ? Cela dépend. Personnellement, je l’utiliserais pour remplacer une occurrence spécifique d’un caractère dans une chaîne.

Par exemple, si une virgule apparaît 10 fois dans une chaîne, je peux remplacer la cinquième occurrence de cette virgule par un autre délimiteur (séparateur) afin de diviser la chaîne à ce point spécifique. Je l’expliquerai dans un autre tutoriel.

Compter un caractère spécifique dans une cellule dans Google Sheets

Commençons par la première formule combinée, à savoir Substitute et Len, car elle fonctionnera dans les deux applications de feuilles de calcul les plus populaires : Excel et Google Sheets.

Utilisation de Substitute et Len

Pour compter le nombre total de caractères dans une chaîne, il existe une fonction appelée LEN dans Google Sheets/Excel. Les experts l’utilisent normalement dans des formules pour exclure les cellules vides.

Astuce : Supposons que la cellule C5 contienne la chaîne « Info Inspired ». La formule =len(C5) renverrait 13, soit le nombre de caractères dans la cellule C5.

Maintenant, essayons cette formule ISBLANK (elle ne fait pas partie de notre formule combinée qui compte un caractère spécifique dans Google Sheets).

=isblank(C5)

En utilisant LEN, nous pouvons le remplacer comme suit.

=if(len(C5),FALSE,TRUE)

Revenons à notre sujet et voyons comment utiliser la combinaison Substitute et Len pour compter un caractère spécifique dans Google Sheets.

La cellule A2 contient la chaîne suivante.

May | June | July | August | September

Je veux compter le nombre de | qui est le séparateur dans cette chaîne. Voici les étapes.

En utilisant Len, nous pouvons obtenir le nombre total de caractères dans la cellule A2. Ici, il serait de 38.

=len(A2)

Maintenant, ce que nous voulons faire, c’est substituer le caractère | par null et obtenir la longueur des caractères à l’aide de la formule suivante.

=LEN(SUBSTITUTE(A2, »| », » »)

Cela renverrait 34. Ainsi, le compte du caractère en question sera de 38-34=4. Nous pouvons écrire la formule combinée comme suit.

=LEN(A2)- LEN(SUBSTITUTE(A2, »| », » »))

Utilisation de Regex et Len

Si nous pouvons utiliser Substitute pour remplacer le caractère spécifique à compter, pourquoi ne pas utiliser Regexreplace ?

Nous pouvons le faire ! Mais ici, nous suivrons une approche différente.

Au lieu de remplacer le caractère spécifique, nous remplacerons tous les autres caractères de la chaîne et compterons les caractères restants à l’aide de Len.

=len(regexreplace(A2, »[^|] », » »))

Remarque : Cette formule ne fonctionnera pas dans Excel.

Formules pour compter un caractère spécifique dans Google Sheets

Les deux combinaisons de formules ci-dessus sont sensibles à la casse. Pour les rendre insensibles à la casse, utilisez les formules suivantes.

Formules insensibles à la casse pour compter un caractère spécifique :

Comptez la lettre « a » (en minuscule et en majuscule) dans la chaîne ababAbAaaa.

Dans la combinaison Len et Substitute, nous pouvons mettre la valeur de la cellule en minuscule et utiliser un caractère en minuscule pour la substitution.

=LEN(A2)- LEN(SUBSTITUTE(lower(A2), »a », » »))

Dans la combinaison Len et Regexreplace, nous pouvons utiliser l’expression régulière (?i) comme suit.

=len(regexreplace(A2, »(?i)[^a] », » »))

Compter un caractère spécifique dans une plage de cellules dans Google Sheets

Nous discutions de la comptabilisation du nombre de caractères ainsi que d’un caractère spécifique dans une seule cellule ou dans une chaîne de cellules. Et une plage de cellules ?

Puisque toutes les fonctions que nous avons utilisées (Len, Substitute, Regerepalce et Lower) prennent en charge la fonction ArrayFormula de Google Sheets, nous pouvons rendre les deux combinaisons sous forme de formules matricielles.

En plus de cela, nous devons utiliser la fonction Sum. Pourquoi ?

Il y a quelques noms de fruits dans la plage A2:B4. Je veux compter le nombre total de caractères « a » dans cette plage.

Formule n° 1 :

=ArrayFormula(SUM(LEN(A2:B4))-SUM(LEN(SUBSTITUTE(A2:B4, »a », » »))))

Formule n° 2 :

=ArrayFormula(SUM(len(regexreplace(A2:B4, »[^a] », » »))))

La fonction Len dans les deux formules renvoie la longueur dans une plage. Ainsi, en utilisant Sum, nous pouvons obtenir la longueur totale.

Les formules ci-dessus sont sensibles à la casse. Rendez-les insensibles à la casse selon mes formules non matricielles.

Conclusion

Voici quelques formules prêtes à l’emploi pour vous.

Comptez le nombre total de caractères d’espacement dans une cellule :

Formule n° 1 :

=LEN(A2)- LEN(SUBSTITUTE(A2, » « , » »))

Formule n° 2 :

=len(regexreplace(A2, »[^s] », » »))

Comptez le nombre total de retours à la ligne dans une cellule :

Formule n° 1 :

=LEN(A3)- LEN(SUBSTITUTE(A3,char(10), » »))

Formule n° 2 :

=len(regexreplace(A3, »[^n] », » »))

Vous pouvez également utiliser ces formules en tant que formules matricielles. Voilà tout ce qu’il faut savoir sur la façon de compter un caractère spécifique dans Google Sheets. Profitez-en !

Articles en lien