Comment dire que la lettre vaut un chiffre
SayzZ
-
PapyLuc51 Messages postés 4519 Date d'inscription Statut Membre Dernière intervention -
PapyLuc51 Messages postés 4519 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai 2 Lettre par exemple A et L et je voudrais dire que A vaut 1 et que L vaut -1 et que si il y a plusieurs A, alors sa me le multiplie par sa valeur
J'ai 2 Lettre par exemple A et L et je voudrais dire que A vaut 1 et que L vaut -1 et que si il y a plusieurs A, alors sa me le multiplie par sa valeur
Configuration: Android / Chrome 88.0.4324.181
A voir également:
- Comment dire que la lettre vaut un chiffre
- Clavier iphone chiffre et lettre - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Chiffre en lettre - Télécharger - Outils professionnels
- Excel trier par ordre croissant chiffre - Guide
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
4 réponses
Bonjour
Pour trouver le nombre de fois le même caractère dans une suite il faut utiliser NBCAR et SUBSTITUE
La formule pour une suite en A2
Pour changer la valeur à multiplier et afin d'éviter de toucher à la formule mettre les multiplicateur dans les cellules à part
A1 le multiplicateur pour la lettre A
B1 le multiplicateur pour la lettre L
Cordialement
Pour trouver le nombre de fois le même caractère dans une suite il faut utiliser NBCAR et SUBSTITUE
La formule pour une suite en A2
=(NBCAR(A2)-NBCAR(SUBSTITUE(A2;"A";"")))*1-(NBCAR(A2)-NBCAR(SUBSTITUE(A2;"L";"")))*1
Pour changer la valeur à multiplier et afin d'éviter de toucher à la formule mettre les multiplicateur dans les cellules à part
A1 le multiplicateur pour la lettre A
B1 le multiplicateur pour la lettre L
=(NBCAR(A2)-NBCAR(SUBSTITUE(A2;"A";"")))*A1-(NBCAR(A2)-NBCAR(SUBSTITUE(A2;"L";"")))*B1
Cordialement
SayzZ
Alors j'ai pas trop compris mais en gros je veut calculer le nombre de A dans plusieurs cellules par exemple de A1 jusqu'à A10 et faire de même avec L
Ok, alors pour ma part je croyais que tu voulais additionner les valeurs des chaque caractère d'un mot et donner la somme.
Par exemple, imagine que "A" vaut 1 et "B" vaut 2.
"ABBA" donnerait 1 + 2 + 2 + 1 = 6
C'est peut-être clair dans ta tête mais je ne peux pas savoir exactement si tu expliques mal.
Par exemple, imagine que "A" vaut 1 et "B" vaut 2.
"ABBA" donnerait 1 + 2 + 2 + 1 = 6
C'est peut-être clair dans ta tête mais je ne peux pas savoir exactement si tu expliques mal.
Tu dois faire un dictionnaire qui est une association clé:valeur comme ça : https://excelmacromastery.com/vba-dictionary/
Les exemples sont clairs et simples, à toi d'adapter.
Je n'ai pas Excel mais LibreOffice Calc, il y a quelques différences, mais, je viens de créer une macro simple. D'abord, je mets les lettres de l'alphabet une à une dans une liste. Ensuite, je crée un input, c'est-à-dire une donnée à taper au clavier, pour assigner une valeur à chaque lettre. J'ai un mot test pour vérifier que le résultat est correct. Le code n'est pas parfait, par exemple, j'ai volontairement rien tapé à chaque input, comme rien n'est pas de type nombre entier ça a sorti une erreur. Voici le code, non commenté car suffisamment explicite :
Les exemples sont clairs et simples, à toi d'adapter.
Je n'ai pas Excel mais LibreOffice Calc, il y a quelques différences, mais, je viens de créer une macro simple. D'abord, je mets les lettres de l'alphabet une à une dans une liste. Ensuite, je crée un input, c'est-à-dire une donnée à taper au clavier, pour assigner une valeur à chaque lettre. J'ai un mot test pour vérifier que le résultat est correct. Le code n'est pas parfait, par exemple, j'ai volontairement rien tapé à chaque input, comme rien n'est pas de type nombre entier ça a sorti une erreur. Voici le code, non commenté car suffisamment explicite :
Option VBASupport 1 Function additionner_lettres(mot as string, dico_equivalence as Scripting.Dictionary) compteur = 0 taille = len(mot) for i = 1 to taille compteur = compteur + dico_equivalence(mid(mot, i, 1)) next i additionner_lettres = compteur End Function Sub Main dim liste_pour_remplissage_nombre(25) as String dim dico_equivalence_lettre_chiffre as New Collection dim phrase as string dim mot_test as string mot_test = "abba" dim resultat as integer for i = 0 to UBound(liste_pour_remplissage_nombre) liste_pour_remplissage_nombre(i) = Chr(65+i) Next i for i = 0 to UBound(liste_pour_remplissage_nombre) phrase = "Tape la valeur équivalente à " & liste_pour_remplissage_nombre(i) temporaire = inputbox(phrase) dico_equivalence_lettre_chiffre.add(temporaire, liste_pour_remplissage_nombre(i)) next i resultat = additionner_lettres(mot_test, dico_equivalence_lettre_chiffre) msgbox resultat End Sub
Tu veux dire le nombre de fois la même lettre dans une plage de cellules qui n'en contiennent qu'une seule ??
dans ce cas un NB.SI est suffisant =NB.SI(A1:A10;"A")* par la valeur du multiplicateur ; soit directement dans la formule, soit, comme dit plus haut, par la référence de la cellule contenant celui-ci
Ma réponse précédente concerne une chaine de caractères dans une seule cellule ; c'est-à-dire on compte le nombre total de caractères dans la cellule et on lui retranche le nombre de caractères sans les caractères cherchés. Ainsi si la cellule contient "BLABLA" (6 caractères - 4 caractères "BLBL") donnent 2 caractères représentant la lettre "A".
Si c'est autre chose donne plus d'explications pour éviter les tâtonnements dans les réponses.
Cordialement
dans ce cas un NB.SI est suffisant =NB.SI(A1:A10;"A")* par la valeur du multiplicateur ; soit directement dans la formule, soit, comme dit plus haut, par la référence de la cellule contenant celui-ci
Ma réponse précédente concerne une chaine de caractères dans une seule cellule ; c'est-à-dire on compte le nombre total de caractères dans la cellule et on lui retranche le nombre de caractères sans les caractères cherchés. Ainsi si la cellule contient "BLABLA" (6 caractères - 4 caractères "BLBL") donnent 2 caractères représentant la lettre "A".
Si c'est autre chose donne plus d'explications pour éviter les tâtonnements dans les réponses.
Cordialement
Bonjour
voyez si ce modèle peut répondre à votre besoin et revenez si soucis
https://mon-partage.fr/f/j6CSxhXU/
crdlmnt
voyez si ce modèle peut répondre à votre besoin et revenez si soucis
https://mon-partage.fr/f/j6CSxhXU/
crdlmnt