Texte

Compter le nombre de mots

Temps de lecture 3 minutes

Cet article va vous montrer comment compter le nombre de mots contenus dans une cellule, comme la colonne B ici.

Description artiste divers

Etape 1 : Compter tous les caractères

Le point de départ pour compte le nombre de mots c'est de dénombrer tous les caractères contenus dans la cellule. Pour cela, il y a la fonction NBCAR.

Mais ce n'est pas tout, nous devons aussi nous assurer qu'il n'y a pas d'espaces "parasites" au début ou à la fin de la chaîne de caractères. Et pour cela, il y a la fonction SUPPRESPACE.

=NBCAR(SUPPRESPACE(B2))

Compter tous les caracteres avec NBCAR et SUPPRESPACE

Etape 2 : Retirer tous les espaces

Pour déterminer le nombre de mots dans une cellule, nous allons agir sur les espaces restant. En effet le nombre de mots est égal au nombre d'espaces + 1.

Nous allons donc retirer tous les espaces présents grâce à l'instruction SUBSTITUE ou REMPLACER. Le caractère à remplacer c'est l'espace " " et on le remplace par rien, soit "" (2 guillemets mis cote à cote)

=SUBSTITUE(B2;" ";"")

Suppression de tous les espaces entre les mots avec SUBSTITUE
Tous les espaces ont été retirés du texte de la cellule

Etape 3 : Compter le nombre de caractères restants

Cette fois-ci nous allons compter le nombre de caractères restants après avoir retirer les espaces.

=NBCAR(D2)

Compter le nombre de caracteres dans la chaine sans les espaces

Etape 4 : Trouver le nombre de mots

Il ne reste plus qu'à faire la différence entre les 2 cellules contenants sans oublier de rajouter 1 unité.

=C2-E2+1

Nombre de mots dans une cellule

Intégrer ces étapes dans une fonction LAMBDA

Pour les utilisateurs d'Excel 365 uniquement, vous pouvez intégrer les 4 étapes dans une seule et même formule et l'appeler par un nom personnalisé. L'avantage de cette technique c'est de sécuriser la formule en évitant toutes erreurs d'utilisation par vos utilisateurs.

L'écriture de la fonction LAMBDA est assez complexe. Les 4 étapes sont intégrées dans la fonction LET, c'est le seul moyen de procéder.

=LAMBDA(
text;LET
(
TrimEspace;SUPPRESPACE(text);
LongeurText; NBCAR(text);
SupprEspace; SUBSTITUE(TrimEspace; " "; "" );
LongeurText-NBCAR(SupprEspace) + 1)
)

Cette formule est à écrire dans une plage nommée depuis le menu Formules > Définir un nom

Menu Definir un nom pour les plages nommees

On peut par exemple lui attribuer le nom de NB.MOTS

Fonction LAMBDA pour creer la fonction NB.MOTS

Ainsi, il est plus facile d'appeler cette fonction directement dans une cellule.

Fonction Personnalisee NB.MOTS

Related posts

Fonctions Texte (Droite, Gauche, Stxt, NbCar, …)

Frédéric LE GUEN

Extraire les derniers mots d’une cellule

Frédéric LE GUEN

Importer des fichiers pdf dans Excel

Frédéric LE GUEN

Laissez un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.