Fonction Recherche

Fermé
Kaci -  
 kaci -
Salut tous le monde, voila mon probleme, c'est au sujet des fonction Recherche j'ai 2 collone A et B, dans A j'ai les performances d1 sportife (Exp saut en longueure), sur B j'ai des notes de 0 à 20 coréspendant à chaque pérformance, pour une pérformance de 5.20m en A, coréspent à une note de 14.00/20 en B si je fais =recherchev(5.21;plageAet B;2;VRAI) ca me donne une note supérieure à 14.00 et moi je veux que la formule me donne Toujours 14.00......................................merci à+

12 réponses

dobo69 Messages postés 1720 Statut Membre 833
 
Bonsoir,
Cela fonctionne normalement comme cela mais s'il existe une valeur à 5,21 il renverra la note correspondante.

Si vous n'avez besoin de rien, demandez-moi.
0
dobo69 Messages postés 1720 Statut Membre 833
 
un petit truc en plus pour que cela marche :
"Les valeurs de la première colonne de table_matrice doivent être classées en ordre croissant ; sans cela, il se peut que RECHRCHEV ne renvoie pas la bonne valeur. "
0
Raymond PENTIER Messages postés 71867 Date d'inscription   Statut Contributeur Dernière intervention   17 397
 
ou bien mettre FAUX à la place de VRAI dans la formule ...
0
dobo69 Messages postés 1720 Statut Membre 833
 
Bonsoir Raymond,

mettre FAUX dans la formule renvoie #N/A si la valeur exacte n'existe pas.
0
Raymond PENTIER Messages postés 71867 Date d'inscription   Statut Contributeur Dernière intervention   17 397
 
Nous sommes bien d'accord ! Mais pourquoi Kaci choisirait une valeur en dehors de sa base ?
0
dobo69 Messages postés 1720 Statut Membre 833
 
Je pense qu'il veut trouver la note immédiatement inférieure au temps qui lui sert de valeur de recherche. Par exemple, il a attribué la note 14 au temps 5.20 et supposons qu'il ait attribué la note 15 au temps 5.30. Je comprends que s'il a un temps de 5.21, il faut qu'il puisse lui attribuer la note de 14.. Cela fonctionne avec RECHERCHEV(...;...;....;VRAI) si les données sont triées.
0
Kaci
 
Salut tous le monde c'est toujour moi Mr Kaci merci Beaucoup pour vos Suggestions mais hélas elles ne fonctionnent pas, je m'explique un peut plus, c'est pour noté des candidats à un examen sportif, j'ai en colonne A des Performance (Saut en longueur) en ordre croissant (3m, 3.25m, 3.5m, 3.75m, 4m....etc.) et en colonne B j'ais des notes correspondant a chaque performance ( 8, 8.5, 9 ,9.5, 10.....) , si j'écris =recherchev(3.25 ;plage ;2) ca donne 8.5, et si j'écris = recherchev(3.30 ;plage ;2) ca donne toujours 8.5 c'est tout a fait logique mais moi je veux qu'elle me donne la note supérieure histoire de récompensé le candidats avec ½ point pour ses efforts, même avec vos suggestion sa ne marche pas ; finalement j'ai réussi à trouvé la solution qui consiste à transposer les performance sur la colonne (C) en ordre décroissant avec un signe - (moins); si je fais = rechrehcev(-3.30 ;plage ;2) ca donne 9 , c'est que sur la colone C les performances sont d'ordre décroissant pour leurs valeurs absolue et en ordre décroissant avec les signes (-)............................merci beaucoup à+
0
Kaci
 
excusez moi érreure de frape il faut lire en dérniére ligne ""en ordre croissant avec les signes (-)...................mérci baucoups à+""
0
Raymond PENTIER Messages postés 71867 Date d'inscription   Statut Contributeur Dernière intervention   17 397
 
Bonjour Kaci. Tu avais une autre méthode :

Remplacer
=RECHERCHEV( A2 ;plage;2;VRAI)
par
=RECHERCHEV( ARRONDI.SUP(4*A2;0)/4 ;plage;2;VRAI)

tu peux d'ailleurs mettre FAUX au lieu de VRAI, le résultat est le même (dans notre exemple).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Kaci
 
Merci Mr Raymond mais votre formule ne marche pas à tous les coups, des fois elle donne la valeure éxacte des fois non !!!!!!!????????.....................à+
0
Raymond PENTIER Messages postés 71867 Date d'inscription   Statut Contributeur Dernière intervention   17 397
 
Peux-tu me donner des exemples ? Parce que lorsque j'ai testé ma solution, elle fonctionnait à tous les coups !
0
Kaci
 
Ok Mr Raymond, voila je reprent éxactement mon éxemple daté du 11 mai 2010 qui est ci dessus, j'ai en A les pérformances suivantes dans un ordre coissant de haut en bas (3m, 3.25m, 3.50m, 3.75m, 4.00m....etc.) en B j'ai les Notes coréspendant à chaque pérformance (8, 8.5, 9 ,9.5, 10.....) sur une celule libre j'écris votre formule =RECHERCHEV( ARRONDI.SUP(4*A2;0)/4 ;plageAB;2;VRAI) et en A2 j'écris 3.25 la formule me donne 8.5 et quant j'écris sur A2 3.49 la formule me donne toujours 8.5 et moi je veusx qu'elle me donne la note supérieure à 8.5 qui est 9, c'est a dire le condidat à l'épreuve sportive a obtenu une pérformance de 3.49m tres proche de 3.50m qui donne 9 comme note, une forme de rachat pour le condidat.........mérci à+
0
Raymond PENTIER Messages postés 71867 Date d'inscription   Statut Contributeur Dernière intervention   17 397
 
Alors envoie-moi ton fichier pour que je t'indique où est ton erreur.
J'ai l'impression qu'elle provient du format de tes valeurs en colonne A.

De plus ce n'est pas en A2 que tu devrais remplacer 3,25 par 3,49.
Il faut laisser ta plage A:B tranquille et saisir ta performance dans une cellule libre, C4 par exemple, et mettre C4 à la place de A2 dans ta formule.
=RECHERCHEV(ARRONDI.SUP(4*C4;0)/4;plageAB;2;VRAI)

https://www.cjoint.com/?fopnqBoTcz --> vérifie : ça marche parfaitement !
0
kaci
 
Ok Mr Raymond cette fois ca marche je pensse que votre formule est mieux que ma méthode (transposer les pérformences en valeurs négatives) mais une quéstion pouvez vous m'éxpliquer ce passage de la formle ARRONDI.SUP(4*C4;0)/4 pourquoi vous multipliez C4 par 4 pour le diviser par 4 ????? a moin que (*) n'est pas un signe de multiplication !!!!! mérci .........................................à+
0
Raymond PENTIER Messages postés 71867 Date d'inscription   Statut Contributeur Dernière intervention   17 397
 
Bonjour.

Je t'explique volontiers, car j'apprécie les gens qui essaient de comprendre ce qu'ils font : ARRONDI.SUP(4*C4;0)/4

Nous saisissons 3,49 en C4
4*3,49 = 13,96
ARRONDI.SUP(13,96;0) = 14
14/4 = 3,5

en effet un nombre entier divisé par 4 ne peut avoir comme reste que 0,00 0,25 0,50 ou 0,75
(16/4=4,00 ; 17/4=4,25 ; 18/4=4,50 ; 19/4=4,75 ; 20/4=5,00 ...)

Avec 3,1 en C4 on aurait 4*3,1=12,4 puis ARRONDI.SUP(12,4;0)=13 et enfin 13/4=3,25

C'est la méthode habituelle utilisée par les enseignants pour arrondir une moyenne de notes au quart de point supérieur.
Si on avait voulu arrondir au demi-point supérieur on aurait écrit
ARRONDI.SUP(2*C4;0)/2
Si on avait voulu arrondir au quart de point inférieur on aurait écrit
ARRONDI.INF(4*C4;0)/4
0
kaci
 
OK, OK merci pour tous ces détails, et si j'avais dans la collones des pérformances, des chifres qui ne sont pas des multiples de 0,25!???? je pensse que la formule (=ARRONDI.SUP(4*C4;0)/4 )
ne marche qu'avec des chifres qui sont des multiples de 0,25, éssaye donc avec les péerormances suivantes en A (3 3,36 3,65 3,95 4,10) pour des notes en B qui sont (8 8,5 9 9,5 10) normalement si j'ais en C4 la valeure 3,37 elle dois etre arrondi en 3,65 ce qui vas me donner 9 comme note!!!......................mérci à+
0
Raymond PENTIER Messages postés 71867 Date d'inscription   Statut Contributeur Dernière intervention   17 397
 
Tout-à-fait exact : Ma formule ne s'appliquait qu'à l'exemple proposé, avec des performances multiples de 0,25.
0
kaci
 
mérci à bientot..................................................
0