Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1764to1768
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

Excel VBA bei neg. Werten weitersuchen

Excel VBA bei neg. Werten weitersuchen
08.06.2020 21:23:03
Mira
Hallo zusammen,
ich hoffe es kann mir jemand helfen.
Ich habe ein Makro (VBA), bei dem die Zielwertsuche benutzt wird.
Die Zielwertsuche soll mir aber keine negativen Werte ausgeben, sondern weitersuchen wenn der Wert negativ ist.
Das hier ist das Makro:

Public Function Zielwert()
Const iMax = 6 + 1 'Anzahl der Zeilen, die der Solver durchlaufen soll
Dim i As Long
For i = 2 To iMax
If i Mod 100 = 0 Then DoEvents
Range("K" & i).GoalSeek Goal:=0, ChangingCell:=Range("J" & i)
Application.StatusBar = "Goalseek arbeitet an Zeile " & i & " von " & iMax & " Zeilen in  _
Sheet " & Z & " von " & zMax & ""
Next i
End Function
Was muss ich hier hinzufügen, damit die Zielwertsuche nach dem nächsten Wert sucht, der dann positiv ist?
Also in Zelle J soll quasi weitergesucht werden, bis ein positiver Zielwert da ist.
Ich hoffe man versteht was ich meine.
Vielen Dank im Voraus und viele Grüße

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel VBA bei neg. Werten weitersuchen
09.06.2020 18:41:18
Dieter
Hallo Mira,
lade doch einmal eine Beispielmappe hoch(anonymisiert und Werte ggf. verändert) und gib ein paar Erläuterungen zu deinem Problem.
Viele Grüße
Dieter
AW: Excel VBA bei neg. Werten weitersuchen
09.06.2020 19:01:25
onur
Wie lautet die Formel in C2?
AW: Excel VBA bei neg. Werten weitersuchen
09.06.2020 19:17:00
Mira
Hallo,
hier ist die Beispielmappe:
https://www.herber.de/bbs/user/138168.xlsx
Und nochmal das Makro was auf diese Mappe passt:
Public Function Zielwert()
Const iMax = 6 + 1 'Anzahl der Zeilen, die der Solver durchlaufen soll
Dim i As Long
For i = 2 To iMax
If i Mod 100 = 0 Then DoEvents
Range("K" & i).GoalSeek Goal:=0, ChangingCell:=Range("J" & i)
Next i
End Function

Die Formel aus Spalte K lautet:
=J3^2-J3*I3/F3-(H3-G3)/F3
Und nochmal zu dem Problem:
In Spalte J wird mir als Ergebnis ein negativer Wert ausgegeben, aber ich möchte, dass die Zielwertsuche weitersucht, bis sie mir einen positiven Wert ausgibt.
Vielen Dank
Anzeige
AW: Excel VBA bei neg. Werten weitersuchen
09.06.2020 21:00:37
Dieter
Hallo Mira,
versuch es einmal mit diesem Programm:
 Sub Zielwert()
Dim i As Long
Dim letzteZeile As Long
Dim wertOK As Boolean
Dim ws As Worksheet
Dim zähler As Long
Set ws = ThisWorkbook.Worksheets("Tabelle1")
letzteZeile = ws.Cells(ws.Rows.Count, "J").End(xlUp).Row
For i = 2 To letzteZeile
wertOK = False
zähler = 0
ws.Range("J" & i) = 0.2
Do Until wertOK
ws.Range("K" & i).GoalSeek Goal:=0, ChangingCell:=ws.Range("J" & i)
zähler = zähler + 1
If ws.Range("J" & i) > 0 Or _
zähler > 10 Then
wertOK = True
End If
Loop
Next i
End Sub
Viele Grüße
Dieter
Anzeige
AW: Excel VBA bei neg. Werten weitersuchen
09.06.2020 21:53:53
Mira
Hallo,
vielen vielen Dank für die schnelle Hilfe!
Jetzt funktioniert es!
Danke Euch!
AW: Excel VBA bei neg. Werten weitersuchen
09.06.2020 22:01:40
onur
Und wieso hast du MEINEN Post nicht geleen?
AW: Excel VBA bei neg. Werten weitersuchen
09.06.2020 19:03:22
onur
Wie lautet die Formel in C2?
AW: Excel VBA bei neg. Werten weitersuchen
10.06.2020 09:44:58
Dieter
Hallo Mira,
eigentlich haben wir mit Kanonen auf Spatzen geschossen. Bei deiner Formel handelt es sich ja nur um eine quadratische Gleichung, die kannst du direkt lösen.
Dazu verwendest du bei deinen Zahlenwerten in J2 die Formel:
=I2/(2*F2)+WURZEL((I2/(2*F2))^2+(H2-G2)/F2)
Um bei allen Zahlenwerten ein positives Ergebnis zu bekommen, kannst du die folgende Formel verwenden:
=WENN(I2/(2*F2)+WURZEL((I2/(2*F2))^2+(H2-G2)/F2)>0;I2/(2*F2)+WURZEL((I2/(2*F2))^2+(H2-G2)/F2); I2/(2*F2)-WURZEL((I2/(2*F2))^2+(H2-G2)/F2))
https://www.herber.de/bbs/user/138183.xlsx
Viele Grüße
Dieter
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige