Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Schleife für Excel Solver
#1
Hallo liebes Forum,
ich bin neu hier und habe gleich eine Frage: 
Ich habe eine Tabellenkalkulation. Dabei soll Zelle  X26 soll den Wert 0 erhalten, Zelle U26 soll dahingehend verändert werden, dass eben Zelle X26 gleich 0 ist. Soweit mit dem Solver auch kein Problem. 
Jetzt habe ich aber nicht nur 1 Zeile, sondern 1200. Da ich keine Lust habe, jede Zeile einzeln mit dem Solver zu lösen, habe ich versucht eine Schleife zu schreiben, die diese Abfrage in jeder Zeile wiederholt.
Ich hab es mit einer Do-While Schleife versucht, leider funktioniert es nicht. Könnt ihr mir helfen? Mein Makro für den Solver sieht so aus:



Sub Makro5()
'
' Makro5 Makro

SolverOk SetCell:="X26", MaxMinVal:=3, ValueOf:=0, ByChange:="U26", Engine:=1, EngineDesc:="GRG Nonlinear"
SolverSolve

End Sub

Besten Dank im Voraus und seid nachsichtig mit mir;)
TUBS
Antworten Top
#2
Hallo und Willkommen im Forum!
Ist der Solver hier nicht "Kanonen auf Spatzen"?
Hier sollte doch eine Zielwertsuche ausreichend sein?
Vielleicht reicht ja auch eine simple Formel?

Dazu müsste man aber Deine Tabelle kennen.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Tongue 
Hallo RPP63,

im ersten Schritt würde auch die Zielwertsuche funktionieren. Im zweiten Schritt muss ich aber noch Randbedinungen einbauen. Deshalb der Solver.
Einen Ausschnitt der Tabelle habe ich angefügt.
"Pu" und "Pcr" sind jeweils Funktionswerte abhängig von "x", "delta P" ist die Differenz zwischen "Pu" und "Pcr". 
Ich suche jetzt jeweils den Wert für "x", damit "delta P" gleich 0 wird (gelbe Zeile).
Ich könnte es manuell für jede Zeile mit dem Solver auswerten, was aber sehr viel Zeit in Anspruch nehmen würde und nachträgliche Änderungen erschweren würde.

Beste Grüße
TUBS


Angehängte Dateien
.pdf   Ausschnitt Tabelle.pdf (Größe: 255,97 KB / Downloads: 7)
Antworten Top
#4
Na ja, ein .PDF ist … eher unglücklich.
Entscheidend ist ja zunächst mal, WIE Pu und Pcr berechnet werden.
Und Formeln sieht man in einer .PDF eher schlecht.
Daher weiß ich auch nicht, ob mein obiger Vorschlag hinhaut.

Ergo:
Stelle eine .xlsx mit den Formeln ein.
Außerdem sollte der Solver für die erste Zeile bereits einmal korrekt gerechnet haben.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#5
Hallo, hier nochmal als Excel Datei.
Das dazugehörige Makro für den Solver ist "Test".

Beste Grüße
TUBS


Angehängte Dateien
.xlsm   Ausschnitt Tabelle.xlsm (Größe: 20,4 KB / Downloads: 8)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste