Excel : Convertir mots en nombre

yvan -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je voudrais convertir des codes à quatre lettres en nombres pour pouvoir effectuer un fonction Count() sur Excel.

Ma liste de codes est du style : CORA
QUAC
COKN
SECR, etc
Je pourrais utiliser la fonction Code() qui marche avec la conversion ANSI (A=97, B=98, etc) mais il faut que je place chaque lettre dans une cellule différente puis faire la somme. Comme j'ai une liste de plus de 100 codes, je voudrais savoir s'il existe une fonction qui effectuerait l'exemple suivant.

Par exemple : CORA
C=99
O=111
R=114
A=97

Donc CORA=> 99+111+114+97=421

Je n'ai pas besoin de revenir au code lettre de départ et ce n'est pas un problème si deux codes lettre donnent le même code chiffre.

Avez-vous des idées ?
Merci beaucoup


A voir également:

4 réponses

eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 279
 
Bonjour,

Autre proposition :
=SOMMEPROD(CODE(MINUSCULE(STXT(A1;LIGNE(1:4);1))))

eric
2
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Bonjour,
Et pour terminer la soirée, la matricielle de service valable quelque soit la longueur du mot
=SOMME(CODE(MINUSCULE(STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1))))

Formule à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule
2
caiman2 Messages postés 1489 Statut Membre 312
 
Bonjour,

Formule avec code ascii des caractères (pas trouvé ANSI) mais bon le principe est le meme:
Exemple votre mot CORA est en A1:

=CODE(GAUCHE(A1;1))+CODE(GAUCHE(A1;2))+CODE(GAUCHE(A1;3))+CODE(GAUCHE(A1;4))

donne 268
0
tontong Messages postés 2586 Date d'inscription   Statut Membre Dernière intervention   1 062
 
Bonjour,
Pour trouver 421 avec CORA en A1 il faudrait utiliser:
=CODE(GAUCHE(MINUSCULE(A1);1))+CODE(STXT(MINUSCULE(A1);2;1))+CODE(STXT(MINUSCULE(A1);3;1))+CODE(DROITE(MINUSCULE(A1);1))
0