Fonction SolverOK

Définit un modèle de solveur de base. Équivaut à cliquer sur Solveur dans le groupeAnalyse des données | , puis à spécifier des options dans la boîte de dialogue Paramètres du solveur.

Remarque

Le complément solveur n’est pas activé par défaut. Pour pouvoir utiliser cette fonction, il doit être activé et installé. Pour plus d’informations sur la procédure à suivre, voir Utilisation des fonctions VBA du solveur. Une fois le complément solveur installé, vous devez établir une référence à celui-ci. Dans Visual Basic Editor, avec un module actif, cliquez sur Références dans le menu Outils, puis sélectionnez Solveur sous Références disponibles. Si Solveur n’apparaît pas sous Références disponibles, cliquez sur Parcourir, puis ouvrez Solver.xlam dans le sous-dossier \Program Files\Microsoft Office\Office14\Library\SOLVER.

SolverOk( SetCell, MaxMinVal, ValueOf, ByChange, Engine, EngineDesc)

SetCell Optional Variant. Fait référence à une seule cellule de la feuille de calcul active. Correspond à la zone Définir cellule cible dans la boîte de dialogue Paramètres du solveur. MaxMinVal Optional Variant. Correspond aux options Max, Min et Valeur dans la boîte de dialogue Paramètres du solveur.

MaxMinVal Spécifie
1 Maximiser
2 Réduire
3 Correspondre à une valeur spécifique

ValueOf Optional Variant. Si MaxMinVal a la valeur 3, vous devez spécifier la valeur à laquelle la cellule cible est mise en correspondance.

ByChange Optional Variant. Cellule ou plage de cellules qui seront modifiées afin que vous obteniez le résultat souhaité dans la cellule cible. Correspond à la zone En cas de modification des cellules dans la boîte de dialogue Paramètres du solveur.

Variante facultative Engine. Méthode à utiliser pour résoudre le problème : 2 pour la méthode Simplex PL, 1 pour la méthode GRG non linéaire ou 3 pour la méthode Évolutionnaire. Correspond à la liste déroulante Sélectionnez une méthode de résolution dans la boîte de dialogue Paramètres du solveur.

EngineDesc Optional Variant. Autre façon de spécifier la méthode de résolution qui doit être utilisée pour résoudre le problème sous la forme d'une chaîne : « Simplex LP », « GRG non linéaire » ou « Évolutionnaire ». Correspond à la liste déroulante Sélectionnez une méthode de résolution dans la boîte de dialogue Paramètres du solveur.

Exemple

Cet exemple utilise les fonctions du solveur pour optimiser la marge brute dans le cadre d’un problème commercial. La fonction SolverOK définit un problème en spécifiant les arguments SetCell, MaxMinVal et ByChange .

Worksheets("Sheet1").Activate 
SolverReset 
SolverOptions precision:=0.001 
SolverOK SetCell:=Range("TotalProfit"), _ 
 MaxMinVal:=1, _ 
 ByChange:=Range("C4:E6") 
SolverAdd CellRef:=Range("F4:F6"), _ 
 Relation:=1, _ 
 FormulaText:=100 
SolverAdd CellRef:=Range("C4:E6"), _ 
 Relation:=3, _ 
 FormulaText:=0 
SolverAdd CellRef:=Range("C4:E6"), _ 
 Relation:=4 
SolverSolve UserFinish:=False 
SolverSave SaveArea:=Range("A33")

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.