Excel - Comptage des lettres et des chiffres séparément dans une seule cellule
J'ai besoin d'un moyen de compter les chiffres et les lettres séparément à l'intérieur d'une cellule.
Par exemple, si une cellule contient 1234567ABC
j'ai besoin pour être en mesure de produire ce que
- "7 Numéros" et
- "3 Lettres".
Je ne peux pas penser à une façon d'utiliser le len()
fonction qui serait à l'œuvre, et countif
ne prend en compte que les cellules elles-mêmes.
Toute aide serait appréciée.
- Heh, Excel. Avez-vous essayé d'utiliser une macro?
- Ne serait-ce pas encore besoin de moi pour le savoir le code pour compter les nombres et les lettres?
Vous devez vous connecter pour publier un commentaire.
Si chaque cellule est rempli uniquement avec des chiffres et des lettres, un rapide non-vba façon d'y parvenir est d'imbriquer une fonction substitute 10 fois pour supprimer l'10 des caractères numériques. ce que vous êtes de gauche avec est alpha uniquement. Ensuite, vous pouvez
len()
l'alpha texte /soustraire un nombre à partir de la longueur d'origine pour obtenir le numérique longueur.En supposant que "1234567ABC" est dans la cellule A1:
Cette formule donne le nombre de lettres. (3)
Cette formule donne le nombre total de personnes: (7)
Si vous voulez commencer à traiter les données dans d'autres manières plus en profondeur, une solution VBA sera probablement nécessaire.
Note
Pour répondre aux besoins de votre post original, ajoutez le suffixe à la fin de l'formules ci-dessus:
Où x = les deux formules ci-dessus. cela va ajouter du texte après le nombre calculé.
Pour En Savoir Plus:
Le lien suivant détails VBA un UDF qui fait quelque chose de similaire:
http://www.mrexcel.com/forum/excel-questions/16364-how-remove-numbers.html
De mise à Jour supplémentaire (merci lori_m)
Cette formule est BEAUCOUP plus facile à lire /mise à jour:
=SUM(LEN(A1)-LEN(SUBSTITUTE(A1,{1,2,3,4,5,6,7,8,9,0},"")))
De ma réponse dans Analyser le format d'une chaîne alphanumérique:
Pour une réponse plus détaillée de cette chaîne
1234567ABC456
serait signalé comme
7N3L3N
Une regexp comme ce sera de faire le travail
ensuite, vous pouvez utiliser la fonction (qui détecte également les chaînes non valides) dans Excel, c'est à dire dans B1
=AlphaNumeric(A1)