看板 Visual_Basic 關於我們 聯絡資訊
各位大大好 我用的是excel 2010 有試著錄製一段規劃求解的巨集 程式碼如下 快速鍵: Ctrl+s ' SolverOk SetCell:="$AB$2", MaxMinVal:=2, ValueOf:=0, ByChange:="$G$2", Engine:= _ 3, EngineDesc:="Evolutionary" SolverDelete CellRef:="$G$3432", Relation:=1, FormulaText:="48" SolverAdd CellRef:="$G$2", Relation:=1, FormulaText:="$E$2" SolverOk SetCell:="$AB$2", MaxMinVal:=2, ValueOf:=0, ByChange:="$G$2", Engine:= _ 3, EngineDesc:="Evolutionary" SolverDelete CellRef:="$G$3432", Relation:=4 SolverAdd CellRef:="$G$2", Relation:=4, FormulaText:="整數" SolverOk SetCell:="$AB$2", MaxMinVal:=2, ValueOf:=0, ByChange:="$G$2", Engine:= _ 3, EngineDesc:="Evolutionary" SolverDelete CellRef:="$G$3432", Relation:=3, FormulaText:="0" SolverAdd CellRef:="$E$2", Relation:=3, FormulaText:="0" SolverOk SetCell:="$AB$2", MaxMinVal:=2, ValueOf:=0, ByChange:="$G$2", Engine:= _ 3, EngineDesc:="Evolutionary" SolverOk SetCell:="$AB$2", MaxMinVal:=2, ValueOf:=0, ByChange:="$G$2", Engine:= _ 3, EngineDesc:="Evolutionary" SolverSolve End Sub 簡單來說 我輸入變數在G欄位的所有儲存格,範圍從G2到G17860,限制式如下 G2<=E2 G2>=0 G2=整數 求AB2的最小值 . . . G3<=E3 G3>=0 G3=整數 求AB3的最小值 . .一直到 . G17860<=E17860 G17860>=0 G17860=整數 求AB17860的最小值 巨集結束 問題一:規劃求解似乎不能直接用複製來做 所以需要用巨集,但小弟我 對程式碼不很了解 所以附上程式碼,希望各位大大可以指點一下,需要修改哪幾個地方 以方便我順利求解 ps計算方式為演化 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.225.188.16 ※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1479546529.A.65E.html Tampa:轉錄至看板 Office 11/19 17:10
Yaiba: 阿鬼 你還是說中文好了...直接講演算法會不會比較好... 11/22 13:03