Bonjour à tous,
J'ai un tableau de nombres (colonnes X et Y), à partir duquel je trace la courbe (nuage de points avec courbe lissée) Y = f(X). Dans le cas présent (cf. fichier joint), le maximum des Y vaut Ymax = 0,971278, atteint pour X = 1,00445 (cf. cellule jaune)
Mon problème est le suivant : comment savoir si mon Ymax (0,971278) est atteint avant le maximum de ma courbe lissée (on se situe alors sur la portion de courbe croissante) ou après (on se situe alors sur la portion de courbe décroissante) ? Il faudrait, selon moi, calculer la dérivée au point Ymax : si elle est positive, on se situe avant le max de la courbe, si elle est négative, on se situe après. Ou, de manière équivalente, tracer la tangente à la courbe au point Ymax et en déduire, selon le signe de la pente, la position de Ymax par rapport au max de la courbe. Mais en VBA, je ne sais pas du tout comment faire, et je ne sais même pas si c'est possible de faire ça sur Excel.
Par exemple, dans le fichier joint, le Ymax (0,971278), désigné par le cercle rouge, se situe tout juste avant le maximum de la courbe, ce qui se traduirait par une dérivée, ou une pente de tangente, positive au point Ymax.
Alors vous allez me dire, pourquoi ne pas tout simplement tracer la courbe Y = f(X) et lire la position du Ymax par rapport au maximum de la courbe ? Parce que, j'ai une montagne de tableau de nombres comme celui en PJ, de valeurs et de taille différentes, et pour lesquels je dois trouver le Ymax ainsi que la position de Ymax par rapport au maximum de la courbe lissée. Donc au lieu de tracer à chaque fois la courbe Y = f(X) et regarder à l'oeil où se trouve le Ymax, je voudrais automatiser tout ça avec du VBA. Mais aucune idée de comment faire...
Voilà, j'espère avoir été compréhensible. Un peu d'aide serait la bienvenue
J'ai un tableau de nombres (colonnes X et Y), à partir duquel je trace la courbe (nuage de points avec courbe lissée) Y = f(X). Dans le cas présent (cf. fichier joint), le maximum des Y vaut Ymax = 0,971278, atteint pour X = 1,00445 (cf. cellule jaune)
Mon problème est le suivant : comment savoir si mon Ymax (0,971278) est atteint avant le maximum de ma courbe lissée (on se situe alors sur la portion de courbe croissante) ou après (on se situe alors sur la portion de courbe décroissante) ? Il faudrait, selon moi, calculer la dérivée au point Ymax : si elle est positive, on se situe avant le max de la courbe, si elle est négative, on se situe après. Ou, de manière équivalente, tracer la tangente à la courbe au point Ymax et en déduire, selon le signe de la pente, la position de Ymax par rapport au max de la courbe. Mais en VBA, je ne sais pas du tout comment faire, et je ne sais même pas si c'est possible de faire ça sur Excel.
Par exemple, dans le fichier joint, le Ymax (0,971278), désigné par le cercle rouge, se situe tout juste avant le maximum de la courbe, ce qui se traduirait par une dérivée, ou une pente de tangente, positive au point Ymax.
Alors vous allez me dire, pourquoi ne pas tout simplement tracer la courbe Y = f(X) et lire la position du Ymax par rapport au maximum de la courbe ? Parce que, j'ai une montagne de tableau de nombres comme celui en PJ, de valeurs et de taille différentes, et pour lesquels je dois trouver le Ymax ainsi que la position de Ymax par rapport au maximum de la courbe lissée. Donc au lieu de tracer à chaque fois la courbe Y = f(X) et regarder à l'oeil où se trouve le Ymax, je voudrais automatiser tout ça avec du VBA. Mais aucune idée de comment faire...
Voilà, j'espère avoir été compréhensible. Un peu d'aide serait la bienvenue