Extraire caractères numériques d'une chaîne alphanumérique

Fermé
moonbeamtb - 18 oct. 2012 à 03:08
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 - 19 oct. 2012 à 03:44
Bonjour,

J'ai un fichier Excel dans lequel j'ai une colonne contenant des chaînes alphanumériques de longueurs et de types variés. Par exemple :


B2
B228
BC2747.8
BL313
CB35
D75.3
DM223


Le nombre de lettres (toujours en début de chaîne) est variable de 1 à 3. Le nombre de chiffres qui suivent est très variable et certains ont des décimales.


Pour ordonner le tout correctement, je dois séparer cette colonne en deux : une pour les lettres et une pour les nombres.


J'ai extrait les lettres facilement avec cette formule (où A2 est ma première cellule):
=GAUCHE(A2;MIN(TROUVE({"0";"1";"2";"3";"4";"5";"6";"7";"8";"9"};A2&"0123456789"))-1)


Je croyais avoir trouvé pour les chiffres avec cette formule :
=RECHERCHE(99^99;--("0"&STXT(A2;MIN(CHERCHE({0;1;2;3;4;5;6;7;8;9};A2&"0123456789"));LIGNE($1:$10000))))


Cependant, cette formule ne tient pas compte des décimales et me renvoie donc 2747 à la place de 2747.8


Je cherche donc une formule (et pas de code VB ou autre) qui ferait l'une ou l'autre des opérations suivantes : 1) extraire les nombres de la chaîne alphanumérique en tenant compte des nombres décimaux ou 2) supprimer les caractères alphabétiques de la chaîne alphanumérique.


Il y a une solution simple ou je suis vouée à aller jouer dans le code?


Merci de votre aide!




A voir également:

4 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 18/10/2012 à 09:24
Bonjour,

Cette formule - je n'en suis pas l'auteur ( Thierry Pourtier, pseudo: Ti)- te donne le nombre de majuscules dans A1
=SOMMEPROD((ESTNUM(TROUVE(STXT(A1;LIGNE(DECALER($A$1;;;NBCAR(A1);1));1);"ABCDFGHJKLMNPQRSTVWXYZ")))*1)

comme elles sont toujours en t^te... , tu fais gauche pour les textes et droite pour les nombres(avec nbcar-cette formule)

Michel
1