Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schleife für Makro

Forumthread: Schleife für Makro

Schleife für Makro
03.06.2007 14:43:00
Marjam
Hallo,
ich habe gerade mein erste Makro aufgezeichnet und es funktioniert sogar, allerdings möchte ich mittels Makro eine Solver-Maximierung durchführen und die Solverfunktion muss für mehrere Zellen durchgeführt werden und damit ich nicht die Zeilen ständig kopieren und verändern muss, möchte eine Schleife oder Loop für das Makro einbauen. Ich habe allerdings keinerlei Kenntnisse mit VB.
Hier ist mein Code und ich möchte das der Solver die Zellen DI2 bis DI52 löst, wobei die veränderbaren Zellen D2-F2 bis D52-F52 sein sollten. Ich bräuchte dringend ein wenig Hilfe und wäre über ein paar Antworten sehr dankbar.

Sub Makro_Marjam_Versuch1()
' Makro_Marjam_Versuch1 Makro
' Tastenkombination: Strg+q
SolverOk SetCell:="$DI$2", MaxMinVal:=1, ValueOf:="0", ByChange:="$D$2:$F$2"
SolverOptions MaxTime:=100, Iterations:=100, Precision:=0.000001, AssumeLinear _
:=False, StepThru:=False, Estimates:=1, Derivatives:=1, SearchOption:=2, _
IntTolerance:=5, Scaling:=True, Convergence:=0.0001, AssumeNonNeg:=True
SolverOk SetCell:="$DI$2", MaxMinVal:=1, ValueOf:="0", ByChange:="$D$2:$F$2"
SolverSolve UserFinish:=True
Range("DI3").Select
SolverOk SetCell:="$DI$3", MaxMinVal:=1, ValueOf:="0", ByChange:="$D$3:$F$3"
SolverSolve UserFinish:=True
Range("DI4").Select
SolverOk SetCell:="$DI$4", MaxMinVal:=1, ValueOf:="0", ByChange:="$D$4:$F$4"
SolverSolve UserFinish:=True
Range("DI5").Select
SolverOk SetCell:="$DI$5", MaxMinVal:=1, ValueOf:="0", ByChange:="$D$5:$F$5"
SolverSolve UserFinish:=True
Range("DI6").Select
SolverOk SetCell:="$DI$6", MaxMinVal:=1, ValueOf:="0", ByChange:="$D$6:$F$6"
SolverSolve UserFinish:=True
End Sub


Grüße
Marjam

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schleife für Makro
03.06.2007 20:37:00
Josef
Hallo Marjam,
ungetestet, weil Solver nicht installiert.
Sub Makro_Marjam_Versuch1()
'
' Makro_Marjam_Versuch1 Makro
'
' Tastenkombination: Strg+q
'

Dim lngR As Long

SolverOptions MaxTime:=100, _
    Iterations:=100, _
    Precision:=0.000001, _
    AssumeLinear:=False, _
    StepThru:=False, _
    Estimates:=1, _
    Derivatives:=1, _
    SearchOption:=2, _
    IntTolerance:=5, _
    Scaling:=True, _
    Convergence:=0.0001, _
    AssumeNonNeg:=True

For lngR = 2 To 52
    SolverOk SetCell:="$DI$" & lngR, MaxMinVal:=1, ValueOf:="0", ByChange:="$D$" & lngR & ":$F$" & lngR
    SolverSolve UserFinish:=True
Next

End Sub

Gruß Sepp

Anzeige
AW: Schleife für Makro
03.06.2007 22:35:17
Marjam
Hallo Sepp,
das ist ja super. Ich habs gerade gerade ausprobiert und es scheint alles zu funktionieren, werde es gleich nochmal ausführlich testen, aber erstmal danke, denn ich wäre da ja trotz aller VB Bücher nie drauf gekommen.
Grüße Marjam
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige