kalibeest208
Nieuwe gebruiker
- Lid geworden
- 17 nov 2016
- Berichten
- 4
Beste heren en/of dames,
Ik heb het volgende probleem.
ik ben bezig met een programmatje dat bepaalde waardes berekent met solver.
dat doet die meerdere keren.
Dit gedeelte werkt, maar soms hebben bepaalde gegevens geen waarde en dan wil ik graag dat de solver die over slaat.
nu heb ik in excel daar een waarde aan gegeven 0 of 100 maar ik krijg hem niet aan de gang als er 0 staat hij blijft steeds rekenen.
If Range("bp3").Value = 100 Then GoTo test1 Else GoTo test2
en dit is de regel die dat zou moeten doen.
maar wat doe ik fout.
dit is de rest van de code.
Sub solvertestgrrrrrr()
Range("bq3").Select
Range("bq3").Value = "in berekening"
test1:
Range("br3").Select
'1
SolverReset
SolverOk SetCell:="$bb$8", MaxMinVal:=3, ValueOf:=0, ByChange:="$bo$3:$bo$6", _
Engine:=1, EngineDesc:="GRG Nonlinear"
SolverAdd CellRef:="$BO$3", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$BO$3", Relation:=3, FormulaText:="0%"
SolverAdd CellRef:="$bo$4", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$bo$4", Relation:=3, FormulaText:="0%"
SolverAdd CellRef:="$bo$5", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$bo$5", Relation:=3, FormulaText:="0%"
SolverAdd CellRef:="$bo$6", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$bo$6", Relation:=3, FormulaText:="0%"
SolverAdd CellRef:="$bo$7", Relation:=2, FormulaText:="100%"
SolverSolve UserFinish:=True
SolverReset
GoTo IZzandnieuwpoort
End
test2:
Range("bs3").Select
Range("bq3").Value = 0
Range("bq4").Value = 0
Range("bq5").Value = 0
Range("bq6").Value = 0
GoTo IZzandnieuwpoort
End
If Range("bp3").Value = 100 Then GoTo test1 Else GoTo test2
IZzandnieuwpoort:
Range("bs7").Select
Range("bq3").Value = "klaar"
End Sub
met vriendelijke groet,
Richard de Vries
Ik heb het volgende probleem.
ik ben bezig met een programmatje dat bepaalde waardes berekent met solver.
dat doet die meerdere keren.
Dit gedeelte werkt, maar soms hebben bepaalde gegevens geen waarde en dan wil ik graag dat de solver die over slaat.
nu heb ik in excel daar een waarde aan gegeven 0 of 100 maar ik krijg hem niet aan de gang als er 0 staat hij blijft steeds rekenen.
If Range("bp3").Value = 100 Then GoTo test1 Else GoTo test2
en dit is de regel die dat zou moeten doen.
maar wat doe ik fout.
dit is de rest van de code.
Sub solvertestgrrrrrr()
Range("bq3").Select
Range("bq3").Value = "in berekening"
test1:
Range("br3").Select
'1
SolverReset
SolverOk SetCell:="$bb$8", MaxMinVal:=3, ValueOf:=0, ByChange:="$bo$3:$bo$6", _
Engine:=1, EngineDesc:="GRG Nonlinear"
SolverAdd CellRef:="$BO$3", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$BO$3", Relation:=3, FormulaText:="0%"
SolverAdd CellRef:="$bo$4", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$bo$4", Relation:=3, FormulaText:="0%"
SolverAdd CellRef:="$bo$5", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$bo$5", Relation:=3, FormulaText:="0%"
SolverAdd CellRef:="$bo$6", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$bo$6", Relation:=3, FormulaText:="0%"
SolverAdd CellRef:="$bo$7", Relation:=2, FormulaText:="100%"
SolverSolve UserFinish:=True
SolverReset
GoTo IZzandnieuwpoort
End
test2:
Range("bs3").Select
Range("bq3").Value = 0
Range("bq4").Value = 0
Range("bq5").Value = 0
Range("bq6").Value = 0
GoTo IZzandnieuwpoort
End
If Range("bp3").Value = 100 Then GoTo test1 Else GoTo test2
IZzandnieuwpoort:
Range("bs7").Select
Range("bq3").Value = "klaar"
End Sub
met vriendelijke groet,
Richard de Vries