Valeur numérique à des lettres
Ouri52
Messages postés
28
Statut
Membre
-
eriiic Messages postés 24581 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24581 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'aimerais trouver une formule me permettant de donner une valeur numérique aux différentes lettres de l'alphabet, de telle sorte que la somme de chaque lettre des mots d'une colonne (Ex. "A") soit automatiquement inscrite dans les cellules de la colonne adjacente (Ex. "B")
Merci,
J'aimerais trouver une formule me permettant de donner une valeur numérique aux différentes lettres de l'alphabet, de telle sorte que la somme de chaque lettre des mots d'une colonne (Ex. "A") soit automatiquement inscrite dans les cellules de la colonne adjacente (Ex. "B")
Merci,
4 réponses
-
Bonsoir
Tu peux passer par le code ASCI des lettres
Pour les majuscules par exemple le code de A est 65, celui de B 66 etc
tu peux récupérer le code d'une lettre par la fonction code ainsi avec C en A1, en B1 la formule =CODE(A1) renverra 67
et si tu veux 3 au lieu de 67 il suffit bien sûr de mettre=CODE(A1)-64
Par contre pour additionner toutes les valeurs il faut programmer une fonction personnalisée en VBA comme celle-ci qui additionne les valeurs des lettres majuscules en comptant 1 pour A, 2 pour B etc
Function addlet(mot As Range) addlet = 0 For n = 1 To Len(mot) addlet = addlet + Asc(Mid(mot, n, 1)) - 64 Next End Function
Faire ALt F11 pour ouvrir l'éditeur VBA
Onglet Insertion puis Module
Copier la macro ci-dessus et la coller dans la page blanche
Fermer l'éditeur
La macro est après accessible dans le classeur par son nom comme n'importe quelle fonction, sa syntaxe est donc =addlet(celuule où se trouve le mot)
ex: avec CHEVAL en A1 et =addlet(A1) en B1 on obtient 51 en B1
Cdlmnt
-
Bonjour Via55,
Je te remercie pour ta réponse, mais je suis encore néophyte dans l'utilisation des formules et des macros dans Excel. Pourrais-tu me donner une illustration des différentes étapes à franchir pour résoudre ce problème. Je précise, que chaque lettre va avoir la valeur que je vais lui attribuer (Ex. "a" pourrait valoir 12 ou 53 ou 128; B = 6 ou 14 ou 242; etc.).
Gratitude! -
-