View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Ian[_9_] Ian[_9_] is offline
external usenet poster
 
Posts: 7
Default "unexpected error" when running solver from a macro

I have got the same problem with running Solver from a
macro. I have isolated the problem as a failiure of the
SolverOK function to populate the target and changing
cells in the dialogue box. If the solver was previouly run
manually and cell addresses are retained in the boxes then
the macro will appear to run. If SolverReset is used
before running the Solver code it certainly not work. The
SolverAdd function does populate the constraints box. This
leads me to conclude it is a Mirosoft bug. How does one go
about letting them know?

-----Original Message-----
Let me rephrase that. We've had no problems until about 9

pm, and now it's not
working on the client's machine. I'll post back when it's

working again.

- Jon

Jon Peltier wrote:

If you run Solver once manually before calling it in

code, does it then
work flawlessly when called from code? If so, then

running this when
your file opens might "solve" your problem:

Sub AutoOpenSolver()
If Not SOLVER.Solver1.AutoOpened Then
SOLVER.Solver2.Auto_Open
End If
End Sub

I went round in circles with this problem, even

contacting the Frontline
Systems people. Finally around 2:30 one fine morning, I

saw an archived
newsgroup post with this code, and we've had no

problems with Solver
since then.

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Peltier Technical Services
Tutorials and Custom Solutions
http://PeltierTech.com/
_______

floodgate wrote:

hi there, i'm having trouble running the solver from a

macro and i was
wondering
if you guys could help me with it

the error message is
"Solver: An unexpected internal error occured, or

available memory was
exhausted."

here's the code:

SolverReset
SolverAdd CellRef:=cellrefstring1, Relation:=2,
FormulaText:=cellrefstring2
SolverOptions Iterations:=32767, Precision:=0.1,

StepThru:=False,
Estimates:=2, Derivatives:=1, SearchOption:=1,

Scaling:=False,
Convergence:=0.1, AssumeNonNeg:=False, AssumeLinear _
:=True
SolverOk MaxMinVal:=3, ValueOf:="0",

ByChange:=bychangestring
SolverSolve

"cellrefstring1" and "bychangestring" are string-type

variables.

running the macro line by line, i found that the error

occurs after the
SolverOk line.
i also realised that if i dont leave the "SetCell"

option empty, and
set it to a dummy cell (that isnt affected by the

ByChange cells), i
will not have this problem on my computer.

however this "workaround" didnt work on almost every

other computer
i've tried. i use excel 2002. i've tried this code on

a few machines
running excel 2002 and 2003.

i doubt it is a problem with referencing to solver.xla

because i check
this everytime before i run the macro on a different

machine.

if this is an old problem that has been mentioned

before, i would
gladly do a readup if someone would give me directions

or point me to a
page/thread.


thanks in advance




.