2013-09-30 29 views
0

我正在使用求解器來查找解決方案。我總是知道我的解決方案是在一個特定的範圍內。我如何設置解算器(VBA)來使用這個範圍。任何想法?設置Excel求解器來查找範圍內的解決方案?

這是我的代碼,我只是想添加一些範圍,如min =「A34」Max =「A45」,並希望解算器找到此範圍之間的解決方案。

SolverOk SetCell:=Range("massfr").Value, _ 
    MaxMinVal:=1, _ 
    ValueOf:="0", _ 
    ByChange:=Range("pdvary").Value 
SolverOptions AssumeNonNeg:=True 
SolverOk SetCell:=Range("massfr").Value, _ 
    MaxMinVal:=1, _ 
    ValueOf:="0", _ 
    ByChange:=Range("pdvary").Value 
+0

給我們更多的細節。 –

+0

範圍是> 1和<4或A1:C4?你確定你的Q屬於這裏(而不是[Super User](http://superuser.com/))? – pnuts

+0

好吧,這是我的代碼,我只是想添加一些範圍,如最小=「A34」最大=「A45」,並希望求解器在這個範圍之間找到解決方案。 SolverOk SetCell:= Range(「massfr」)。Value,MaxMinVal:= 1,ValueOf:=「0」,ByChange:= Range(「pdvary」)。值,MaxMinVal:= 1,ValueOf:=「0」,ByChange:=範圍(「pdvary」)。值 SolverSolve – user2703472

回答

0

從您的範圍中刪除'.value'。我想應該是這樣的:

ByChange:=Range("pdvary") 

全碼:(未經測試)

SolverOk SetCell:=Range("massfr"), _ 
    MaxMinVal:=1, _ 
    ValueOf:="0", _ 
    ByChange:=Range("pdvary") 
SolverOptions AssumeNonNeg:=True 
SolverOk SetCell:=Range("massfr"), _ 
    MaxMinVal:=1, _ 
    ValueOf:="0", _ 
    ByChange:=Range("pdvary") 

更多信息請參閱本link