Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Renvoi de valeur

jo1177

XLDnaute Junior
Bonjour le forum,

J'ai un petit souci de formule pour renvoyer une valeur. J'ai un tableau de données, et je souhaiterai par l'intermédiaire d'une formule renvoyer la valeur de la ligne 1 correspondant à la dernière valeur la plus élevée de mon tableau de données. J'ai mis un fichier d'exemple en PJ pour que cela soit plus explicite. J'ai essayé avec les fonctions RECHERCHE() et INDEX(), sans succès...

Merci d'avance pour votre aide !
 

Pièces jointes

  • Renvoi valeur.xlsx
    9.7 KB · Affichages: 14

jo1177

XLDnaute Junior
Bonjour JHA,

Merci pour votre retour. Votre formule ne fonctionne malheureusement pas, elle renvoi à la valeur max du tableau...

Mais c'est un bon début car elle pourrait peut-être s'appliquer si on y ajoute la prise en compte de la ligne la plus basse du tableau !

En fait, si je décompose la formule dont j'ai besoin :
1. Définir la valeur MAX de chaque colonne
2. Parmis ces valeurs MAX, laquelle est située le plus bas dans mon tableau
3. En fonction de la colonne où se situe la valeur MAX la plus basse, renvoyer la valeur affichée en ligne 1
 

Lolote83

XLDnaute Barbatruc
Salut JHA,
Je me suis juste inscrit sur cette discussion en "suivi" car j'avais ton idée, mais je ne pense pas après avoir lu et relu l'ennoncé que ce soit le résultat attendu et de fait, je ne sais pas comment faire.
J'ai compris, d'après son exemple, qu'il souhaite récupéré en fonction de la valeur maxi d'une donnée sur la colonne (mais qui est le plus bas sur cette colonne).
Ici, c'est bien la valeur 122 (colonne B) qui est la valeur maxi car en ligne 7.
Maxi colonne A=50 mais ligne 6
Maxi colonne C=138 mais ligne 5
Donc, si la valeur 122 colonne B était en ligne 3, c'est la valeur 50 (ligne 6) qui aurait due être prise en compte.
Et dela, on retourne ensuite la ligne d'entete
Voilà ce que j'ai compris, mais peut être suis-je de nouveau dans le faux
J'espère mettre fait comprendre dans mon explication car pas facile a developper
Quelque copies sont peut être plus parlantes sur ma compréhension du sujet

Ici 138 car valeur maxi (colonne C) mais aussi la ligne la plus grande

Ici 122 maxi (colonne B) mais aussi la ligne la plus grande

Ici 50 car valeur maxi (colonne A) mais aussi la ligne la plus grande
Encore une fois, je suis peut être dans le faux total.
Ceci est ma réflexion
@+ Lolote83
 

sousou

XLDnaute Barbatruc
Bonjour jo
JHA la question de jo me semble plus complexe, (la dernière valeur la plus élevée) est 122, j'en conclus que le rangt(ligne dans le tableau à son importance. Mais peut-être que je n'ai rien compris
Toutefois si c'est cela , je propose une fonction perso:=maxi(a2:c9)

Function maxi(zone)
Set monmax = zone.Cells(1, 1)
cd = monmax.Column - 1
For c = 1 To zone.Columns.Count
maxc = Application.Max(zone.Columns(c))
Set mc = zone.Columns(c).Find(maxc)
If mc > monmax And mc.Row > monmax.Row Then Set monmax = mc
Next
Set maxi = zone.Cells(0, monmax.Column - cd)
End Function


A vous lire je pense que j'avais compris?
 

jo1177

XLDnaute Junior
Bonjour Lolote83, c'est tout à fait ça, et c'est bien plus clair que mon explication initiale !!


 

Lolote83

XLDnaute Barbatruc
Re salut à tous,
En suivant toujours mon idée, voici ce que j'ai pondu.
Toujours en espérant que la compréhension du sujet est bien celle annoncé au post#4
@+ Lolote83
 

Pièces jointes

  • Copie de JO1177 - Renvoi valeur.xlsx
    12.5 KB · Affichages: 4

Lolote83

XLDnaute Barbatruc
Re salut à tous,
Une dernière réflexion,
Si tu as 2 valeurs maxi positionnées sur la même ligne que doit renvoyer la formule dans ce cas 200 ou 300

Avec mon fichier, cela renvoi 200 et le code de Sousou aussi.
@+ Lolote83
 

jo1177

XLDnaute Junior
Lolote83,

Justement, je viens d'être confronté au problème dans mon fichier original...
Dans mon cas, le ferai la moyenne des cellules 200 et 300 (donc =250).

Tu saurais intégrer ce calcul supplémentaire dans la formule ?
 

Lolote83

XLDnaute Barbatruc
Merci Sousou pour cette modification de code, mais notre ami JO1177, souhaite la moyenne entre 200 et 300.
Ton ancien code donnait donc 200
Le nouveau donne 300
Il faut maintenant faire la moyenne
Je cherche de mon coté
@+ Lolote83
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…