Aller au contenu principal

Qu'est-ce que la fonction NBCAR ?

Définition
La fonction NBCAR renvoie le nombre total de caractères d'une chaîne de texte, espaces inclus. Elle prend un seul argument et retourne un entier.

NBCAR (LEN en anglais) est ta fonction de référence pour compter le nombre de caractères dans un texte. Que tu valides le format d'un code postal, contrôles la longueur d'un mot de passe, vérifies des numéros de sécurité sociale ou mesures la taille de descriptions produits, NBCAR est là. Elle compte tout sans exception : lettres, chiffres, espaces, ponctuation, symboles et même les sauts de ligne.

Concrètement, c'est elle qui signale les codes postaux trop courts avant un import en base de données, qui identifie les descriptions e-commerce trop longues pour l'affichage mobile, qui valide les SIRET ou les numéros de sécu, ou encore qui sert de base pour compter les mots dans un commentaire client. Fini les validations manuelles qui prennent des heures.

Syntaxe

=NBCAR(texte)

Clique sur un argument pour aller à son explication.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

Comprendre chaque paramètre de la fonction NBCAR

1

texte

: le texte dont tu veux connaître la longueur

Ça peut être une référence de cellule comme A1, du texte entre guillemets comme "Bonjour", ou le résultat d'une autre formule qui retourne du texte. Si tu fournis un nombre, Excel le convertit automatiquement en texte avant de compter.

NBCAR compte tous les caractères sans exception : lettres majuscules et minuscules, chiffres, espaces (y compris ceux en début et fin de texte), signes de ponctuation, caractères spéciaux et sauts de ligne (chacun compte pour 1 caractère). Si une cellule est vide, NBCAR renvoie 0.

Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment compter les caractères d'une cellule avec la fonction NBCAR

Un fichier d'adresses arrive d'un export et personne ne sait s'il est propre. Tu as une liste de villes avec leur département, leur région et leur code postal, et tu veux d'abord savoir combien de caractères contient réellement chaque code avant d'en faire quoi que ce soit. NBCAR lit le contenu d'une cellule et te renvoie ce nombre de caractères.

Les étapes
  1. 1
    Dans une cellule, écris =NBCAR(.
  2. 2
    En 1er argument : clique sur la cellule du code postal à mesurer, D2. C'est le seul argument que la fonction attend, et rien d'autre ne vient après lui. Pointer la cellule plutôt que taper le code entre guillemets garde la formule liée au tableau, si bien qu'elle se met à jour dès que le contenu de D2 change.
  3. 3
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas. Chaque ligne mesure alors le code postal qui lui correspond, et la colonne entière devient contrôlable en un coup d'œil.
Au final, ta formule devrait ressembler à ça :=NBCAR(D2)
Explication
La cellule D2 contient 69003, donc la formule renvoie 5. NBCAR compte tous les caractères sans exception, espaces compris : un code postal français en fait exactement 5, et c'est ce chiffre qui sert ensuite de référence pour contrôler toute la colonne.
Exemple 2

Comment repérer un code postal invalide avec la fonction NBCAR dans un SI

Un import d'adresses qui part avec des codes postaux tronqués, c'est un courrier sur dix qui revient. Sur la même liste de villes, tu veux une colonne de contrôle qui signale toute seule les codes dont la longueur n'est pas de 5 caractères. NBCAR fournit le décompte et SI le transforme en verdict lisible.

Les étapes
  1. 1
    Dans une cellule, écris =SI(.
  2. 2
    En 1er argument : écris la comparaison qui départage les codes valides des autres, NBCAR(D2)=5. NBCAR mesure le code postal de la ligne, et le =5 confronte ce décompte au format attendu. La parenthèse de NBCAR se referme ici même, avant le point-virgule qui introduit l'argument suivant.
  3. 3
    En 2ᵉ argument : saisis le texte à afficher quand la longueur est conforme, "OK". Les guillemets sont indispensables pour qu'Excel traite ces deux lettres comme du texte. Sans eux, il y verrait un nom de plage qui n'existe pas et renverrait #NOM?.
  4. 4
    En 3ᵉ argument : saisis le texte qui couvre tous les autres cas, "À corriger". Il s'affiche aussi bien pour un code trop court que pour un code trop long, puisque la comparaison est fausse dès que le décompte n'est pas exactement 5.
  5. 5
    Ferme la parenthèse et appuie sur Entrée. Seule celle de la fonction SI reste ouverte à ce stade, puisque celle de NBCAR a été refermée dès le premier argument.
Voici la formule que tu obtiens à la fin :=SI(NBCAR(D2)=5;"OK";"À corriger")
Explication
D2 contient 1000 : NBCAR y compte 4 caractères, la condition =5 est fausse et la formule affiche À corriger. Le zéro initial de 01000 a sauté à l'export, et c'est exactement le genre d'anomalie qu'un simple coup d'œil ne voit pas. Digne-les-Bains tombe dans le même cas avec 4000, tandis que les codes à 5 caractères ressortent en OK.
Exemple 3

Comment extraire la fin d'un texte de longueur variable avec la fonction NBCAR combinée à DROITE

Des références clients préfixées par un code pays, ça ne se rapproche d'aucun autre fichier tant que le préfixe reste collé. Tu as une colonne de références du type FR-750011245 et tu veux isoler l'identifiant qui suit le tiret, sachant qu'il ne fait jamais la même longueur d'une ligne à l'autre. NBCAR mesure la référence entière pour dire à DROITE combien de caractères garder.

Les étapes
  1. 1
    Dans une cellule, écris =DROITE(.
  2. 2
    En 1er argument : clique sur la cellule de la référence complète, A2. C'est dans cette chaîne entière, préfixe inclus, que la fonction va prélever ses caractères.
  3. 3
    En 2ᵉ argument : écris le calcul qui fixe le nombre de caractères à garder, NBCAR(A2)-3. NBCAR mesure la référence de la ligne, et la soustraction retire ce qui précède l'identifiant. Le 3 correspond exactement aux trois caractères du préfixe FR-, tiret compris.
  4. 4
    Ferme la parenthèse et appuie sur Entrée. Celle de NBCAR ayant déjà été refermée à l'intérieur du calcul, il n'en reste qu'une seule à clore.
Une fois les morceaux assemblés, ta formule donne ça :=DROITE(A2;NBCAR(A2)-3)
Explication
A2 contient FR-750011245, soit 12 caractères. NBCAR renvoie ce 12, on retire les 3 caractères du préfixe FR- et DROITE récupère les 9 derniers, donc 750011245. Comme le calcul repose sur la longueur réelle de chaque cellule, la formule s'adapte toute seule à FR-69003 comme à FR-590001234.
Le conseil du pro
NBCAR compte tous les caractères d'une cellule, espaces compris. Sur le texte « Le Dojo », elle renvoie 7, car l'espace du milieu compte comme un caractère à part entière.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les erreurs fréquentes avec la fonction NBCAR

NBCAR ne renvoie jamais de code d'erreur, et c'est justement ce qui piège : elle compte tout, même ce que tu ne vois pas. Le cas qui revient le plus souvent, ce sont les espaces invisibles collés par un copier-coller, qui te donnent 7 là où tu attendais 5. Avant de te fier au chiffre, demande-toi toujours si ce que tu mesures est bien ce que tu crois mesurer.

Espaces invisibles qui faussent le comptage

Les espaces en début ou fin de texte, souvent créés lors de copier-coller depuis un site web ou un autre outil, s'ajoutent silencieusement. Tu attends 5 caractères pour "Paris" mais NBCAR retourne 7 parce qu'il y a un espace avant et après : " Paris ".

Solution : Enveloppe ton texte dans SUPPRESPACE avant de compter : =NBCAR(SUPPRESPACE(A1)). Cette fonction supprime les espaces parasites en début/fin et réduit les espaces multiples en un seul.

Cellule vide renvoie 0 au lieu de rester vide

Si la cellule source est vide, NBCAR renvoie 0 et non une erreur. Ça fausse les statistiques si tu calcules une moyenne de longueurs et que tu veux exclure les cellules non renseignées.

Solution : Conditionne le calcul : =SI(A1="";"";NBCAR(A1)). Si A1 est vide, la formule renvoie une cellule vide plutôt que 0, et tes moyennes restent justes.

Confusion entre NBCAR et NB.VIDE

NBCAR compte les caractères à l'intérieur d'une cellule. NB.VIDE compte le nombre de cellules vides dans une plage. Les deux noms se ressemblent, mais ils opèrent à des niveaux totalement différents.

Solution : Retiens la distinction : NBCAR travaille sur le contenu d'une seule cellule et renvoie un entier. NB.VIDE travaille sur une plage de cellules et compte celles qui sont vides. Vérifie ton besoin avant d'écrire la formule.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

NBCAR vs GAUCHE vs DROITE vs STXT vs SUPPRESPACE

Prends NBCAR quand tu veux mesurer sans toucher au texte : c'est la seule du lot qui renvoie un nombre et ne modifie rien. Dès que ton but est d'extraire un bout de chaîne (GAUCHE, DROITE, STXT) ou de la nettoyer (SUPPRESPACE), tu changes de famille. D'ailleurs ces fonctions se marient très bien : NBCAR sert souvent à calculer combien de caractères donner à GAUCHE ou DROITE.

CritèreNBCARGAUCHEDROITESTXTSUPPRESPACE
Fonction principaleCompter les caractèresExtraire à gaucheExtraire à droiteExtraire au milieuNettoyer les espaces
Type de retourNombreTexteTexteTexteTexte
Modifie le texte❌ Non✅ Extrait✅ Extrait✅ Extrait✅ Nettoie
Nombre de paramètres12231
Usage typiqueValidation longueurCode postal, préfixeExtension fichierExtraction préciseNettoyage données
Lucas, la mascotte du Dojo, avec une ampoule, partage des astuces avancées

Astuces avancées avec NBCAR

1Astuce

Compter le nombre de mots dans un texte

Il n'existe pas de fonction native pour compter les mots, mais tu peux déduire le nombre de mots en comptant les espaces et en ajoutant 1 : =NBCAR(SUPPRESPACE(A1))-NBCAR(SUBSTITUE(SUPPRESPACE(A1);" ";""))+1. L'astuce : on soustrait la longueur sans espaces de la longueur avec espaces, ce qui donne le nombre d'espaces = nombre de mots moins 1.
Parfait pour analyser des commentaires ou des réponses ouvertes et détecter celles qui sont trop courtes.

2Astuce

Détecter les cellules contenant des sauts de ligne

Pour trouver les cellules avec des sauts de ligne internes (insérés avec Alt+Entrée), compare la longueur avant et après avoir retiré le caractère de retour : =NBCAR(A1)<>NBCAR(SUBSTITUE(A1;CAR(10);"")). Si le résultat est VRAI, la cellule contient au moins un saut de ligne.
Utile pour nettoyer des imports où des retours à la ligne cachés faussent les tris et les comparaisons.

3Astuce

Retirer une extension de fichier dynamiquement

Pour extraire le nom de fichier sans son extension, combine GAUCHE et NBCAR : =GAUCHE(A1;NBCAR(A1)-NBCAR(SUBSTITUE(A1;".";""))) retire tout ce qui suit le dernier point. Pour rapport_2024.xlsx, ça retourne rapport_2024.xl, ce qui montre que pour un seul point la formule =GAUCHE(A1;CHERCHE(".";A1)-1) suffit.
La version avec NBCAR est utile quand les noms de fichiers peuvent contenir plusieurs points.

Le combo gagnant
Associe NBCAR à SUPPRESPACE pour repérer les cellules qui traînent des espaces en trop, ou à GAUCHE et STXT pour découper un texte à la bonne longueur.
FAQ

Questions fréquentes

Oui, NBCAR compte chaque espace comme un caractère à part entière. Si tu écris "Bonjour toi" (11 caractères avec l'espace), NBCAR retourne 11. C'est important à savoir quand tu valides des formats de données : un code postal "750 01" avec un espace au milieu retournera 6 et non 5. Utilise SUBSTITUE pour retirer les espaces avant de compter si tu veux la longueur hors espaces.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction NBCAR : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir