Attribution selon différence entre deux chiffres
Résolu
Warp.
Messages postés
1
Statut
Membre
-
ccm81 Messages postés 11033 Statut Membre -
ccm81 Messages postés 11033 Statut Membre -
Bonjour,
Voici mon problème;
Mes valeurs de bases (deux valeurs dans tous les cas) varient entre 0.25 et 12 et change uniquement par palier de 0.25.
La différence entre ces deux valeures et LA BASE du calcul.
ex; Valeur 1 = 3.25
Valeur 2 = 6.25
A partir de là, sachant que pour chaque palier de 0.25
entre 0 et 5, le point et de 3
entre 5 et 6, le point et de 2.5
entre 6 et l'infini le point et de 2
But, trouver le total de point selon la différence entre les deux valeurs.
Comment convertir ceci dans une formule tenant encore compte que la valeur 1 peut être plus élevée que la valeur 2.
J'ai bien essayé avec des formules en SI mais j'y perds mon latin (bien que je n'ai jamais apris le latin).
Merci au esprit éclairé...
Voici mon problème;
Mes valeurs de bases (deux valeurs dans tous les cas) varient entre 0.25 et 12 et change uniquement par palier de 0.25.
La différence entre ces deux valeures et LA BASE du calcul.
ex; Valeur 1 = 3.25
Valeur 2 = 6.25
A partir de là, sachant que pour chaque palier de 0.25
entre 0 et 5, le point et de 3
entre 5 et 6, le point et de 2.5
entre 6 et l'infini le point et de 2
But, trouver le total de point selon la différence entre les deux valeurs.
Comment convertir ceci dans une formule tenant encore compte que la valeur 1 peut être plus élevée que la valeur 2.
J'ai bien essayé avec des formules en SI mais j'y perds mon latin (bien que je n'ai jamais apris le latin).
Merci au esprit éclairé...
7 réponses
-
Bonjour
essaies
=SI(ABS(A1-A2)<5;3;SI(ABS(A1-A2)<6;2,5;2))
-
Malheureusement cette formule ne fonctionne pas.
Voici ce que ça donnerai si je le ferai en manuel
Valeur 1 ; 3.25
Valeur 2 ; 6.25
de 3.25 à 5 = 1.75 1.75 / 0.25 = 7 7 x 3 = 21
de 5 à 6 = 1 1 / 0.25 = 4 4 x 2.5 = 10
de 6 à 6.25 = 0.25 0.25 / 0.25 = 1 1 x 2 = 2
TOTAL 33
Et il y a encore une complication dans le fait que la valeur 1 peut être plus élevée que la valeur 2.
Good luck... -
bonjour,
Avec tes données en A1 et B1, cela pourrait donner ceci :
=(MIN(5;B1)-MIN(5;A1))/0.25*3+(MIN(6;B1)-MAX(5;A1))/0.25*2.5+(MAX(6;B1)-MAX(6;A1))/0.25*2
-
Merci,
Avec quelques rajouts voici la formule qui fonctionne.
=SI(A1<B1;((MIN(5;B1)-MIN(5;A1))/0.25*3)+((MIN(6;B1)-MAX(5;A1))/0.25*2.5)+((MAX(6;B1)-MAX(6;A1))/0.25*2);SI(B1<A1;((MIN(5;A1)-MIN(5;B1))/0.25*3)+((MIN(6;A1)-MAX(5;B1))/0.25*2.5)+((MAX(6;A1)-MAX(6;B1))/0.25*2);))
Bonne journée à tous -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
bonjour à tous
@Warp
es tu sûr que ta formule fonctionne dans tous les cas?
chez moi, il y a un problème
pour 2 et 2.25 elle donne -24.5 au lieu des 3 attendus
pour 6.25 et 7 elle donne 3.5 au lieu des 6 attendus
....
mais je me suis peut être trompé
de mon côté, j'ai tenté une macro (peut être plus lisible que la formule excel)
Public Function valeur(v1 As Single, v2 As Single) As Single Dim mini As Single, maxi As Single If v1 = v2 Then valeur = 0: Exit Function If v1 < v2 Then mini = v1: maxi = v2 Else mini = v2: maxi = v1 End If Select Case maxi Case 0 To 5: valeur = (maxi - mini) * 3 / 0.25 Case 5 To 6 Select Case mini Case 0 To 5: valeur = (5 - mini) * 3 / 0.25 + (maxi - 5) * 2.5 / 0.25 Case 5 To 6: valeur = (maxi - mini) * 2.5 / 0.25 End Select Case Is > 6 Select Case mini Case 0 To 5: valeur = (maxi - 6) * 2 / 0.25 + 1 * 2.5 / 0.25 + (5 - mini) * 3 / 0.25 Case 5 To 6: valeur = (maxi - 6) * 2 / 0.25 + (6 - mini) * 2.5 / 0.25 Case Is > 6: valeur = (maxi - mini) * 2 / 0.25 End Select End Select End Function
bonne suite -
Effectivement dès que les deux valeurs sont en dessous de 5 ou en dessus de 6 il y a un problème.
La macro c'est bien, le problème c'est qu'au final ce calcul doit s'intégrer dans un autre.
S'il y a un amateur pour trouver la soluce.
J'y travail avec peine... -
la fonction "macro" s'utilise comme une fonction excel (voir doc joint)
RQ. j'ai gardé tes opérations pour que tu puisses t'y retrouver, mais on peut simplifier
https://www.cjoint.com/?3LtlKkPjTvL
bonne suite