XL97: Unexpected Results Using the SolverAdd Function

ID: Q162259

The information in this article applies to:

SYMPTOMS

In Microsoft Excel 97, when you execute the SolverAdd function to programmatically add a constraint in your Solver model, the constraint is not added.

CAUSE

This problem may occur if you use R1C1 notation for the "FormulaText" argument of the SolverAdd function. In Microsoft Excel 97, the "FormulaText" argument for SolverAdd will execute successfully only when specified in A1 notation.

NOTE: In earlier versions of Microsoft Excel, when you added a constraint to a problem with the Visual Basic function SolverAdd, you were required to specify the right side of the equation (the "FormulaText" argument) in R1C1 notation. If you did not specify the "FormulaText" argument in R1C1 notation, the constraint was not added. This has changed in Microsoft Excel 97 and now the opposite is true.

WORKAROUND

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact the Microsoft fee-based consulting line at (800) 936-5200. For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

   http://www.microsoft.com/support/supportnet/refguide/

For example, the following line will not add a constraint to a Solver model in Microsoft Excel 97:

   SolverAdd CellRef:=Range("$A$1"), Relation:=1, FormulaText:="R1C2"

To correct this problem, change the FormulaText argument to A1 notation, as in the following example:

   SolverAdd CellRef:=Range("$A$1"), Relation:=1, FormulaText:="$B$1"
C:\MSOffice\Excel\Libary\Solver\.

Additional query words: 97 XL97 addin

Keywords          : kbprg kbdta kbdtacode xladdins KbVBA 
Version           : WINDOWS:97
Platform          : WINDOWS

Last Reviewed: May 18, 1999