FUNCTION
11.10.2004 15:21:35
woro
ich möchte eine Funktion schreiben, die einen wert übergibt in ein anderes datenblatt. ist das geschehen soll der solver starten. die ermittelten werte sollen nun in die nächsten vier felder unter der funktion eingetragen werden.
folgenden code (der leider nicht so funktioniert) habe ich.
---------------------------------------------------------------
Public
Function schreiben(laenge As Integer) As Variant
With Sheets("tabelle6")
'Der Eingetragene Wert muss in die Tabelle geschrieben werden
Sheets("tabelle6").Range("b2").Value = laenge
'Der Solver der Seite wird gestartet
Call Tabelle6.s1
'Die vom Solver ermittelten Werte sollen in den nächsten vier zellen
'unter der funktion eingetragen werden
ActiveCell.Offset(1, 0).Value = .Range("c4").Value
ActiveCell.Offset(2, 0).Value = .Range("c5").Value
ActiveCell.Offset(3, 0).Value = .Range("c6").Value
ActiveCell.Offset(4, 0).Value = .Range("c7").Value
End With
End Function
---------------------------------------------
und der code vom solver:
Public
Sub s1()
SolverOk SetCell:="$D$8", MaxMinVal:=1, ValueOf:="0", ByChange:="$C$4:$C$7"
SolverOptions MaxTime:=100, Iterations:=100, Precision:=0.000001, AssumeLinear _
:=True, StepThru:=False, Estimates:=1, Derivatives:=1, SearchOption:=1, _
IntTolerance:=5, Scaling:=False, Convergence:=0.0001, AssumeNonNeg:=True
' solveradd cellref:=Range("c4:c7"), relation:=4, formulatext:="integer"
' solveradd cellref:=Range("$d$2"), relation:=2, formulatext:="$d$8"
SolverSolve userfinish:=True
SolverFinish keepfinal:=1
End Sub
-------------------------------------------
Wer kann mir hier helfen?