Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
744to748
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
744to748
744to748
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro zur Zielwertberechnung versch. Varianten

Makro zur Zielwertberechnung versch. Varianten
22.03.2006 14:57:54
Elmar
Hallo liebe Leute,
ich habe folgendes Problem: Ich habe eine Berechnungstabelle und eine Wertetabelle (x und gesuchte y-Wert). Etwa so:
Zielzelle
2500 (x mal y mal Konstante)
Y-berechnet
50
X-aus der Werrtetabelle
1
Konstante
50
Wertetabelle
X-Wert : Y-Wert
1
10
20
30
40
50
Ich möchte, dass das Makro den Wert x1 in die Berechnungszelle (X-berech.)kopiert, dann eine Zielwertsuche in der Zielzelle durchgeführt wird (Zielwert 2500, veränderbare Zelle (Y)) Bei X1 = 1 wäre das also 50. Dann soll dieses Ergebnis in die Wertetabelle eingetragen werden. Dieser Vorgang sollte, im optimalen Fall automatisch, mit anderen X-Werten fortgesetzt werden, so dass ich am Ende zu jedem x auch ein errechneten y-Wert erhalte.
Kann mir jemand bei dieser Aufgabe helfen?

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro zur Zielwertberechnung versch. Varianten
22.03.2006 16:00:42
Andreas Emmert
Hallo Elmar,
vielleicht denke ich zu einfach, aber wozu eine Makrolösung, wenn es auch schlichtweg zu rechnen geht? Bspw. so:
AW: Makro zur Zielwertberechnung versch. Varianten
22.03.2006 16:42:52
Elmar
Hallo Andreas,
erstmal vielen Dank für die schnelle Antwort. Aber das Problem ist etwas komplizierter. Ich habe versucht die Aufgabe etwas zu vereinfachen, da es relativ schwer ist, alles zu beschreiben. Die angegebene Konstante ist eigentlich eine Berechnungstabelle mit vielen Nebenbedingungen. Folgendes möchte ich erreichen. Die x WErrte können in meinem Beispiel variieren. Wenn sich x ändert, verändert sich auch die Zielzelle. Diese darf sich aber nicht verändern, so dass ich mit einer Zielwertsuche die Zielzelle wieder auf ihren ursprungswert rechne indem ich y als veränderbare Zelle verwende. Dadurch verändert sich y . Diese(n) wert/werte möchte ich in einer Tabelle darstellen. Ich habe versucht ein Makro aufzuzeichnen:
'
ActiveCell.Select
Selection.Copy
Range("E7").Select
ActiveSheet.Paste
Range("C16").Select
Application.CutCopyMode = False
Range("C16").GoalSeek Goal:=8000, ChangingCell:=Range("C7")
Range("C7").Select
Selection.Copy
ActiveCell.Offset(0, 11).Range("A1").Select
ActiveSheet.Paste
Allerdings vervollständigt dieses Makro nicht meine Tabelle sondern überschreibt einfach immer den neu berechneten y-Wert.
Ich glaub das ist wirklich schwer zu verstehen, aber vielleicht klappts ja. Ich kann leider nicht die Tabelle hochladen, da sie Firmen Know-how enthält. Morgen habe ich etwas mehr zeit vielleicht kann ich es dann mit einem Beispiel hochladen. Für Antworten bin ich trotzdem dankbar.
Anzeige
AW: Makro zur Zielwertberechnung versch. Varianten
22.03.2006 18:07:56
Andreas Emmert
Hi Elmar,
eine Beispieltabelle würde sicherlich weiterhelfen, ich tue mir noch recht schwer, das Problem nachzuvollziehen ... ich stelle die Frage nochmal auf offen, damit ggf. auch andere nochmal reinsehen in den thread.
Grüße
Andreas
AW: Makro zur Zielwertberechnung versch. Varianten
23.03.2006 11:23:57
Elmar
Hi Andreas,
ich glaube Du hast recht ich habe eine Beispiel datei erstellt und das Anforderungsprofilk nochmal dargestellt. Hoffe jetzt kanns was werden....

Die Datei https://www.herber.de/bbs/user/32172.xls wurde aus Datenschutzgründen gelöscht

Das Makro soll folgendes können:
1. den Wert der Zelle K2 in E2 einsetzen.
2. Eine Zielwertsuche der mit der Zielzelle c5 (Zielwert 8.000) und der veränderbaren Zelle c2 durchführen
3. Das Ergebnis der Zelle c2 in die Ergebnisliste eintragen (L2)
4. Die Schritte 1 bis 3 für die anderen Variablen für A durchführen, so das ich eine vollständige Wertetabelle erhalte
Anzeige
AW: Makro zur Zielwertberechnung versch. Varianten
23.03.2006 18:52:51
Andreas Emmert
Hallo Elmar,
sorry wegen der späten Antwortn, hatte heute leider kaum Zeit hier reinzuschauen. Ich habe dir das Makro mal in die Mappe eingebaut, hoffentlich ist es das, was du dir vorstellst, eine Eingabezelle für den Zielwert habe ich mit aufgenommen.
https://www.herber.de/bbs/user/32204.xls
Wenn's hilft, wäre ein Feedback schön.
Grüße
Andreas
AW: Makro zur Zielwertberechnung versch. Varianten
23.03.2006 20:47:18
Elmar
Hi Andreas,
ich bin völlig begeistert!! Das Makro ist so kurz ?! Du bist ab heute mein VBA Held, ehrlich!!
Vielen Dank!
Grüße Elmar
Noch eine kurze Frage
23.03.2006 22:19:05
Elmar
Hi Andreas,
wie erreiche ich es, dass am Ende der Berechnug wieder der Ursprungs- bzw. Ausgangswert in die Zelle E 2 geschrieben wird. Also beispielsweise habe ich in der Berechnungstabelle mit 500 gerechnet, betrachte aber mit der Makroberechnug die Variablen 1 bis 100. Am Ende möchte ich aber wieder 500 (also den Ursprungswert) in der Berechnungstabelle haben.Im Moment bleibt immer der letzte Wert der Wertetabelle in der Berechnungstabelle stehen.
Wäre prima wenn Du mir nochmal helfen kannst!
Grüße Elmar
Anzeige
AW: Noch eine kurze Frage
24.03.2006 13:40:05
Andreas Emmert
Hi Elmar,
du hängst einfach eine Variable in die Sub ein, die sich den Wert merkt und ihn am Ende wieder einträgt. Lösung wäre also bspw. so:

Private Sub GetResults_Click()
SaveMe = ActiveSheet.Cells(2, 5).Value
For i = 2 To 12
With ActiveSheet
.Cells(2, 5) = .Cells(i, 11)
.Cells(5, 3).GoalSeek Goal:=.Cells(9, 4), ChangingCell:=.Cells(2, 3)
.Cells(i, 12) = .Cells(2, 3)
End With
Next i
ActiveSheet.Cells(2, 5) = SaveMe
End Sub

Grüße
Andreas
AW: Noch eine kurze Frage
24.03.2006 16:54:56
Elmar
Hallo Andreas,
so weit so gut, aber der Rechenwert für A muss ja auch als Ursprungswert zurück in die Berechnungstabelle. Habe folgendes versucht und bin gescheitert:

Private Sub GetResults_Click()
SaveMe = ActiveSheet.Cells(2, 5).Value
SaveMe = ActiveSheet.Cells(2, 3).Value
For i = 2 To 12
With ActiveSheet
.Cells(2, 5) = .Cells(i, 11)
.Cells(5, 3).GoalSeek Goal:=.Cells(9, 4), ChangingCell:=.Cells(2, 3)
.Cells(i, 12) = .Cells(2, 3)
End With
Next i
ActiveSheet.Cells(2, 5) = SaveMe
ActiveSheet.Cells(2, 3) = SaveMe
End Sub

Wie kann ich im Makro mehrere Zellen zum "merken" einsetzen?
Viele Grüße
Elmar
Anzeige
AW: Noch eine kurze Frage
24.03.2006 20:43:39
Andreas Emmert
Hi Elmar,
du musst dann natürlich auch verschiedene Variablennamen vergeben, sonst überschreibst du ja mit dem zweiten Wert den ersten, ergo muss dein Quelltext dann so aussehen:

Private Sub GetResults_Click()
SaveMe1 = ActiveSheet.Cells(2, 5).Value
SaveMe2 = ActiveSheet.Cells(2, 3).Value
For i = 2 To 12
With ActiveSheet
.Cells(2, 5) = .Cells(i, 11)
.Cells(5, 3).GoalSeek Goal:=.Cells(9, 4), ChangingCell:=.Cells(2, 3)
.Cells(i, 12) = .Cells(2, 3)
End With
Next i
ActiveSheet.Cells(2, 5) = SaveMe1
ActiveSheet.Cells(2, 3) = SaveMe2
End Sub

Grüße
Andreas
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige