Automatisation du solver sur Excel 2003

Bonjour à tous,

Je dois utiliser le solver dans un modèle financier qui doit servir de base de calcul pour mon entreprise. Pour le moment, je dois pour chaque simulation relancer le solver manuellement pour chaque calcul dans toutes les feuilles (c'est relou et mes collègues n'arriveront pas à faire ça tout seul).

1er problème :

Est-il possible d'automatiser ce process (que le calcul se fasse automatiquement lorsque l'on change les hypothèses du modèle).

2ème problème :

Sur chaque feuille de calcul de mon modèle, j'ai 2 paramètres à déterminer grâce au solver dont un qui est dépendant de l'autre.

Pouvez-vous me filer un coup de main sachant que les macros et compagnie, c'est pas encore mon truc (je pense qu'il va falloir que je m'y mette sérieusement).

Merci beaucoup.

capture 1

Bonjour,

Tu crées ton solveur comme d'habitude...

Dans l'éditeur VBA (alt+F11),

insertion-module

dans outils-référence tu coches Solver xla

ensuite cet exemple de macro est classique d'un calcul 1° degré à commander par un bouton

  .Range("P58").ClearContents
       SolverOk SetCell:="P58", MaxMinVal:=1, ValueOf:="0", ByChange:="I53:N53"
    SolverSolve (True)    

End Sub

dans lequel ici P58 est la valeur cherchée, bychange les param^tres

au besoin, sur un brouillon excel, crées ton solveur en utilisant l'enregistreur de macro et regarde le code fourni pour piger la ligne solverOK

le param^tre "true" après solversolve est important et à garder.

Merci Michel,

Mais VB me met un message d'erreur : Erreur de compilation : Sub ou fonction non définie

voilà ce que j'ai fait :

Sub Macro1()

Range("E28").ClearContents

SolverOk SetCell:="$E$28", MaxMinVal:=0, ValueOf:="0", ByChange:="$E$28"

SolverAdd CellRef:="$E$28", Relation:=2, FormulaText:="$E$26"

SolverOk SetCell:="$E$28", MaxMinVal:=1, ValueOf:="0", ByChange:="$E$28"

SolverSolve (True)

End Sub

En fait c'est bon, ça marche bien, j'ai compris mon erreur....

Merci beaucoup

Rechercher des sujets similaires à "automatisation solver 2003"