Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

compter les nombres dans une chaîne de caractére

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

eduraiss

XLDnaute Accro
Bonsoir le forum

voila en cellule a1 par exemple j'ai une chaîne ainsi constituée 1c 2e 3f 4p

comment avoir le résultat en B1 de 10

En quelque sorte additionner les nombres de la chaine

Merci a vous
 
Re : compter les nombres dans une chaîne de caractére

hello

je ne sais pas faire (sauf s'il y a toujours la même configuration), mais d'où vient ce texte bizarre ?
ne peut-on pas prendre le problème à la racine ?
 
Re : compter les nombres dans une chaîne de caractére

bonsoir,
en supposant ton"texte" dans la cellule A1

Code:
Sub nb_dans_texte()
With Range("A1")
    For i = 1 To .Characters.Count
        If IsNumeric(.Characters(i, 1).Text) Then som = som + CDbl(.Characters(i, 1).Text)
    Next i
End With
MsgBox som
End Sub
 
Re : compter les nombres dans une chaîne de caractére

Bonsoir

Formule à tester. Formule à valider par les touches Ctrl+Shift+Entrer
Code:
=SOMME(FREQUENCE(SI(ESTERR(STXT(A1;LIGNE(DECALER(B1;;;NBCAR(A1)));1)*1);"";STXT(A1;LIGNE(DECALER(B1;;;NBCAR(A1)));1)*1);{0;1;2;3;4;5;6;7;8;9})*{0;1;2;3;4;5;6;7;8;9;0})

La partie LIGNE(DECALER(B1;;;NBCAR(A1)), dans la fonction STXT, permet de prendre caractère par caractère la chaine de la Cellule A1.
La cellule référencée en B1 doit toujours commencer à la ligne 1. (attention lors du glisser).

FREQUENCE permet de retourner une matrice de 10 valeurs, indiquant le nombre de caractères numériques trouvés dans la chaîne.

ATTENTION, cette formule ne permet pas de calculer les nombres de plusieurs chiffres.

@+Jean-Marie
 
Re : compter les nombres dans une chaîne de caractére

Re...

Autre formule, plus courte, mais sans validation par les trois touches.
Code:
=SOMME(FREQUENCE(CODE(STXT(A1;LIGNE(DECALER(A1;;;NBCAR(A1)));1));{48;49;50;51;52;53;54;55;56;57;58})*{0;1;2;3;4;5;6;7;8;9;0;0})
NOTA, toujours la restriction des nombres à deux chiffres.

@+Jean-Marie
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
17
Affichages
876
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…