View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Michael R Middleton Michael R Middleton is offline
external usenet poster
 
Posts: 18
Default Problem with SolverAdd. Can anyone help?

Tim Anderson -

Chris Albright mentions a similar problem (constraints being ignored) in his
book VBA for Modelers (Duxbury). In his example the workaround was to repeat
the SolverReset and SolverOK lines of code before calling SolverAdd.

- Mike Middleton, www.usfca.edu/~middleton

wrote in message
...
Bill,

Thanks for responding. The rest of the code works fine.
There are no compile errors, no error messages. The only
problem is that the constraints are not added to Solver
when the macro is run. Everything else works perfectly.
Here is the entire subroutine:

Sub SolveIt()
'
'SolveIt Macro
'Macro recorded 12/12/03 by Tim Anderson
'
Application.ScreenUpdating = False
Count = Range("MatrixL").Count
NumRows = Sqr(Count)

'Reset the Solver
SolverReset
SolverOptions MaxTime:=100, Iterations:=100,
Precision:=0.000001, AssumeLinear _
:=False, StepThru:=False, Estimates:=1,
Derivatives:=1, SearchOption:=1, _
IntTolerance:=5, Scaling:=True, Convergence:=0.0001,
AssumeNonNeg:=False

'Insert new constraints
For i = 1 To NumRows
SolverAdd CellRef:=Range("MatrixLLT").Cells(i, i),
Relation:=2, FormulaText:="1"
Next i

'Set objective function and decision variables, then solve
SolverOk SetCell:="Objective", MaxMinVal:=2, ValueOf:="0",
ByChange:="MatrixL"
SolverSolve

End Sub

When I "step through" the code, the "highlight" steps
through the loops, but for some strange reason, the
constraints do not get added to Solver. Everything else
in the subroutine works perfectly. Strangely enough, this
exact same code DOES work on other computers. I just
can't figure out why it won't work on THIS one.

If you have any ideas as to why, I'd sure appreciate
hearing them.

Tim Anderson