Bonjour,
Je cherche à faire fonctionner le solveur le manière successive mais pour le moment je n'arrive pas à faire la première itération. L'idée c'est que le solveur trouve la solution pour chaque plage correspondant à un code. Cette plage débute à ma ligne référence et termine à la valeur ligne.
Dans ma cellule Y2 qui est la cellule que je cherche à optimiser j'ai réussi à y mettre le calcul de la fonction en lien avec ma plage variable (pour l'itération). Mon problème est d'arriver à dire au solveur que c'est cette fonction que je veux qu'il optimise et non pas la valeur du calcul dans la cellule. (Pour le moment quand je lance la macro il ne reconnait même pas la fonction solverOk qui provient pourtant d'une macro enregistrée)
Voici le code que j'ai réussi à trouver pour le moment
Sub Solveurboucle()
Dim p As Range
Set Trav = Sheets("Trav macro")
Ligne = 2
ligneref = 2
While Trav.Cells(Ligne, 4).Text = Trav.Cells(ligneref, 4).Text
Ligne = Ligne + 1
Wend
Set p = Range(Trav.Cells(ligneref, 17), Trav.Cells(Ligne, 17))
Range("Y2").FormulaR1C1 = WorksheetFunction.Percentile(p, 0.9)
Range("Y2").Select
SolverReset
SolverOk SetCell:="$Y$2", MaxMinVal:=2, ValueOf:=0, ByChange:="$T$2", Engine:=1 _
, EngineDesc:="GRG Nonlinear"
SolverSolve
End Sub
Merci d'avance pour votre aide, j'espère que mes explications sont claires vu le peu d'expérience que j'ai de VBA.