Si A=1 et B=3 alors AB = 4

  • Initiateur de la discussion Initiateur de la discussion Sinistrus
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

Sinistrus

Guest
Bonjour,

Je suis nouveau et novice et c'est mon premier poste.

Je suis en train de faire un projet scolaire et j'ai besoin de votre aide.

Si A=1 et B=3 et C=1 alors ABC = 5
J'ai une série de mots que je dois trouver le nombre comme l'exemple le montre ci-dessus et je n'arrives pas à faire :s
Les lettres sont de A à Z et chaque lettre à une valeur que je dois additionner.
Si je prends par exemple le mot EXEMPLE cela me donnera 19 en raison de E1 X10 E1 M2 P3 L1 E1

Mes mots commencent de la colonne B2 à B 250

Pouvez-vous m'aider svp ?
 
Re : Si A=1 et B=3 alors AB = 4

Re,
ci-joint proposition à tester.
Dis-nous si cela te convient.
Code:
Sub Scrabble()
Dim Derligne&, Résultat As Byte, i&, j As Byte, Lettre As String, Corresp&
Tabl = Range("N1:N26")
Derligne = Range("B" & Rows.Count).End(xlUp).Row
For i = 2 To Derligne
    For j = 1 To Len(Cells(i, 2))
    Lettre = Mid(Cells(i, 2), j, 1)
        Corresp = Application.WorksheetFunction.Match(Lettre, Tabl, 0)
        Résultat = Résultat + Cells(Corresp, 15)
    Next j
    Cells(i, 9) = Résultat
    Résultat = 0
Next i
End Sub
A+
 

Pièces jointes

Re : Si A=1 et B=3 alors AB = 4

Bjr à tous,

David, j'ai testé ton code mais j'ai une erreur : Impossible de lire la propriété Match

Est-ce que cela vient de cette ligne dans le code qui ne me paraît pas terminée ?

Code:
Dim Derligne&, Résultat As Byte, i&, j As Byte, Lettre As String, Corresp&

Comment puis-je faire ? est-ce la version 2003 ?

merci de ton attention, cordialement, Gérard
 
Re : Si A=1 et B=3 alors AB = 4

Merci infiniment à tous pour votre aide. La solution est juste et le projet est je penses achevé. Encore merci pour votre aide.

Code:
Function ValMot(Mot As String) As Long
Dim N As Long
ValMot = 0: For N = 1 To Len(Mot): ValMot = ValMot + ValCar(Mid$(Mot, N, 1)): Next N
End Function

Function ValCar(C As String) As Long
ValCar = Choose(Asc(C) - 64, 1, 3, 3, 2, 1, 4, 2, 4, 1, 8, 10, 1, 2, 1, 1, 3, 8, 1, 1, 1, 1, 4, 10, 10, 10, 10)
End Function
Voici la fonction qui fonctionne avec mon problème. Merci encore
 
Re : Si A=1 et B=3 alors AB = 4

Re
Je n'ai pas trouvé en formule seule, mais nul doute que quelqu'un de la trempe de david va encore nous épater (j'attends de voir ça )
Désolé de te décevoir Tototiti, mais en formule c'est jouable mais pas pratique. La formule
Code:
=DECALER(O$1;EQUIV(STXT(B2;1;1);GAUCHE(corresp;1);0)-1;)+DECALER(O$1;EQUIV(STXT(B2;2;1);GAUCHE(corresp;1);0)-1;)
fonctionne en l'état sur mon fichier mais il faudrait la compléter pour qu'elle s'adapte à des mots comportant plus de lettres donc je pense que c'est typiquement une solution VBA qui est la plus adaptée avec l'utilisation d'une boucle.
J'ai d'ailleurs vu que c'est ce que tu as fait mais en passant par une fonction...personnellement, concernant les sub, je commence à m'y mettre mais je bloque sur la construction des fonctions (alors que je les comprends quand je les lis...cela viendra peut-être avec plus de pratique😕).
Natorp : je pense que la fonction de Tototiti est la plus adaptée. Concernant le problème que tu sembles avoir, le plus simple est de poster ton fichier exemple.
A+
Edit : la zone nommée "corresp" utilisée dans ma formule correspond à la plage M1:M26
 
Dernière édition:
Re : Si A=1 et B=3 alors AB = 4

Bonjour,

Pour 2 lettres, moi qui suis loin d'être un "formuliste invertébré", j'ai des formules relativement simples mais en présentant le tableau de valeurs autrement.
La seule partie VBA consiste à calculer le total mais je pense qu'on peut le faire aussi facilement par formule.
Comme le suggère david84, je passerai plutôt par une macro pour généraliser le décompte.
 

Pièces jointes

Re : Si A=1 et B=3 alors AB = 4

Bonjour le fil 🙂,
Juste pour le fun, une solution uniquement formule qui prends jusqu'à 12 lettres mais qui peux évidemment être facilement complètée 😛...
Bonne soirée 😎
PS : Solution 2007, pour 2003, il faudrait juste modifier la formule qui serait 2 fois plus longue 🙄...
 

Pièces jointes

Re : Si A=1 et B=3 alors AB = 4

Re, salut JNP🙂,
ci-joint une version Formule qui me semble opérationnelle, en modifiant légèrement la présentation du tableau des correspondances et en travaillant à l'aide d'une formule relativement compacte.
A+
 

Pièces jointes

Dernière édition:
Re : Si A=1 et B=3 alors AB = 4

Bonjour à tous,

Comme cette problématique me travaillait et que j'étais sûr qu'une formule "simple" devait pouvoir résoudre ce problème, j'ai embêté david par MP (merci à lui) et ça m'a permis de tenter une autre approche que je vous soumet...

En colonne I, la formule matricielle qui semble fonctionner
 

Pièces jointes

Re : Si A=1 et B=3 alors AB = 4

Re 🙂,
Comme cette problématique me travaillait et que j'étais sûr qu'une formule "simple" devait pouvoir résoudre ce problème
ci-joint une version Formule qui me semble opérationnelle, en modifiant légèrement la présentation du tableau des correspondances et en travaillant à l'aide d'une formule relativement compacte.
J'étais sûr qu'avec ma solution "bourrin", j'allais vous titiller (ou tototitiller 😛...).
Bravo à tous les 2 😉.
Bonne journée 😎
 
Re : Si A=1 et B=3 alors AB = 4

Re,
Chapeau bas maître Tototiti !
Formule compacte et généralisable, tout ce qu'il faut là où il faut pour satisfaire un formuliste 😉.
Alors je mets ma formule sous le bras et m'éclipse sur la pointe des pieds🙄.
A+
 
Re : Si A=1 et B=3 alors AB = 4

Bonjour JNP, Bonjour david,

@david : Si tu ne m'avais pas mis sur une autre piste en excluant la première dans laquelle je m'engluais, je crois que je ne l'aurais jamais trouvée
Rendons à César... mais merci du compliment, surtout de la part d'un formuliste comme toi 😉

@JNP : Il sait nous titiller le bougre, bien joue Jean-Noël 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

P
Réponses
11
Affichages
12 K
P
R
Réponses
2
Affichages
1 K
RoadRunner
R
Retour