VBA et Solveur : Problème de ValueOf

Résolu/Fermé
Méryll - 9 oct. 2008 à 15:59
 Méryll - 9 oct. 2008 à 18:22
Bonjour à tous !

Alors voilà, j´ai un petit problème dans une de mes macros qui utilise le solveur. J´utilise le solveur pour résoudre une équation dont je connais le résultat à atteindre. J´ai défini ce résultat comme une variable dans ma macro et nommé une cellule dans ma feuille de calcul aussi (celle ou figure ce résultat).

Le problème, c que quand je programme le solveur, il me résoud l´équation mais sans prendre la valeur par défaut que je lui donne (et considère que celle-ci est égale à zéro).

Du coup, le "x" que je recherche est faux bien entendu.

Voici mon code :

Sub Solveur()

Dim vc As Integer
vc = Worksheets(1).Range("Valeur_cible")

SolverReset
SolverOptions precision:=0.0001

SolverOK SetCell:=Range("Vérif_Xmax"), _
MaxMinVal:=3, ValueOf:="" & vc & "", _
ByChange:=Range("Xmax")
SolverSolve
SolverFinish

End Sub

C´est curieux, alors que le code accepte pour SetCell que je donne une cellule nommée, il n´accepte pas pour ByChange...
Bien sur g aussi essayé avec :

ValueOf:=Range("Valeur_cible")

Ne marche pas...

Idem avec :

ValueOf:=Range("B4") ' B4 sont les coordonnées où se trouve le résultat à atteindre


Une remarque inquiétante : Quand on fait le test sans macro et qu´on appelle le solveur à partir de la feuille de calcul, on voit bien d´ailleurs que le champs "valeur" ne permet pas de sélection une cellule mais qu´il faut rentrer un chiffre "à la main"... alors que l´option cellule cible offre de parcourir la feuille et de sélectionner une cellule...

Quelqu´un aurait-t-il une ídée ???

Merci !

1 réponse

C bon g trouvé tout seul !

ct tout bete, il fallait juste définir ma variable vc comme un Double et pas un Integer, puisque ce dernier ne comprend que des entiers !

YAHOOOOOOOO !!!
0