Hallo Zusammen,
möchte mit Hilfe eines Makros den Solver auf eine große Zahl von Zeilen anwenden. Die Berechnung beginnt in Zeile i=25 und endet in Zeile i=35. Zelle Gi soll den Wert Null annehmen, und Zelle Ai enthält die Variable:
Sub Makro9()
'
Const iMax = 35 'Anzahl der Zeilen, die der Solver durchlaufen soll
Dim rSetCell As Range 'eine Variable für einen Zellbezug: SetCell
Dim rByChange As Range 'eine Variable für einen Zellbezug: ByChange
'
For i = 25 To iMax
'Definiere einen Zellbezug, der sich auf Spalte "G" und die jeweilige Zeile "i" bezieht
Set rSetCell = activeWorksheet.Range(CStr("$G$" & i))
'Definiere einen Zellbezug, der sich auf Spalte "A" und die Zeile "i" bezieht
Set rByChange = activeWorksheet.Range(CStr("$A$" & i))
'Zeige dem User an, dass das Programm Fortschritte macht: diese Zeile kann weggelassen werden
Application.StatusBar = "Solver arbeitet an Zeile " & i & " von " & iMax & " Zeilen"
'Rufe den Solver auf
SolverOk SetCell:=rSetCell, MaxMinVal:=3, ValueOf:="0", ByChange:=rByChange
SolverSolve UserFinish:=True
Next i
End Sub
Leider erscheint beim Aufruf des Makros die Fehlermeldung "Laufzeitfehler 424 - Objekt erforderlich". Der Debugger springt dann in die Zeile
Set rSetCell = activeWorksheet.Range(CStr("$G$" & i))
Hat jemand von euch eine Idee, wo der Fehler stecken könnte?
Viele Grüße
rekrit2300
|