Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1240to1244
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
Inhaltsverzeichnis

Zielwertsuche automatisch 2 x ausführen

Zielwertsuche automatisch 2 x ausführen
Ralf
Hallo Forum,
ich verwende folgendes Makro für eine Zielwertsuche:
Sub Zielwertsuche()
Dim Mldg1, Titel1, Wert1
Mldg1 = "Bitte die Umlage eintragen. Die zugehörige Umlagestückzahl wird errechnet."
Mldg2 = "Bitte die Anzahl der Umlagejahre angeben."
Titel1 = "Zielwert für Umlage"
Titel2 = "Umlagejahre"
Wert1 = InputBox(Mldg1, Titel1)
Wert2 = InputBox(Mldg2, Titel2)
If IsNumeric(Wert1) Then
AddIns("Solver").Installed = True
With Application
.Iteration = True
.MaxIterations = 32767
.MaxChange = 0.000001
End With
Range("B34").GoalSeek Goal:=CDbl(Wert1), ChangingCell:=Range("B29")
'Ergebniszelle => Range("B34").goalseek
'Zielwert => Goal:=Wert1
'Variable Zelle => ChangingCell:=Range("B29")
End If
If IsNumeric(Wert2) Then
Range("B15") = Wert2
End If
End Sub

Das Makro funktioniert, nur wird der eingegebene Wert erst bei dem 2. Durchlauf genau erreicht. Wie kann ich das Makro mit dem Wert aus der Inputbox automatisch ein 2. mal durchlaufen lassen? Das Ergebnis ist ansonsten etwas unbefriedigend weil zu ungenau.
Vielen Dank für eine Rückmeldung.
Gruß
Ralf

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zielwertsuche automatisch 2 x ausführen
02.12.2011 14:13:12
Harald
Hallo Ralf,
einfach diesen Teil
Range("B34").GoalSeek Goal:=CDbl(Wert1), ChangingCell:=Range("B29")
zwei Mal hintereinander ausführen, also Code doppeln?
Harald
AW: Zielwertsuche automatisch 2 x ausführen
02.12.2011 14:22:03
Ralf
Hallo Harald,
nee, das geht leider nicht.
Ich muss dann trotzdem 2 x den Button drücken und die Werte eingeben.
Viele Grüße
Ralf
AW: Zielwertsuche automatisch 2 x ausführen
03.12.2011 08:18:50
fcs
Hallo Ralf,
wenn das Ergebnis korrekt berechnet wird, nach dem die Anzahl Jahre in Zelle B15 eingetragen wurde, dann solltest du diesen einfach vor der Zielwertberechnung vom Makro eintragen lassen.
Dann sollte es im 1. Makrodurchlauf funktionieren.
Gruß
Franz
PS. Die Prüfung auf Zahlenwert-Eingabe in den Input-Boxen, sollte unmittelbar nach der Eingabe erfolgen und das Makro ggf. beendet werden.
Sub Zielwertsuche()
Dim Mldg1 As String, Titel1 As String, Wert1
Dim Mldg2 As String, Titel2 As String, Wert2
Mldg1 = "Bitte die Umlage eintragen. Die zugehörige Umlagestückzahl wird errechnet."
Mldg2 = "Bitte die Anzahl der Umlagejahre angeben."
Titel1 = "Zielwert für Umlage"
Titel2 = "Umlagejahre"
Wert1 = InputBox(Mldg1, Titel1)
If Wert1 = "" Or Not IsNumeric(Wert1) Then GoTo Beenden
Wert2 = InputBox(Mldg2, Titel2)
If Wert2 = "" Or Not IsNumeric(Wert1) Then GoTo Beenden
AddIns("Solver").Installed = True
With Application
.Iteration = True
.MaxIterations = 32767
.MaxChange = 0.000001
End With
Range("B15") = Wert2
Range("B34").GoalSeek Goal:=CDbl(Wert1), ChangingCell:=Range("B29")
'Ergebniszelle => Range("B34").goalseek
'Zielwert => Goal:=Wert1
'Variable Zelle => ChangingCell:=Range("B29")
Beenden:
End Sub

Anzeige
AW: Zielwertsuche automatisch 2 x ausführen
03.12.2011 21:14:30
Ralf
Hallo Franz,
jetzt passt es. Funktioniert optimal.
Vielen Dank für Deine Unterstützung.
Viele Grüße
Ralf

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige