Hallo,
ich möchte in Excel die Zielwertsuche etwas automatisieren, sodass ich diese nich jedes Mal wieder aufrufen muss.
Also mein Problem (z.B.):
Ihc habe in den Zellen A1:A5 zahlen stehen. In Zelle A6 wird die Summe der Zahlen gebildet. Jetzt möchte ich, dass die Zelle A5 so abgeändert wird, dass die Summe 0 bleibt. Das soll nach jeder Eingabe von Zahlen in A1:A4 überprüft werden.
Also wenn A1=1; A2=2, A3=3; A4=4 sind, dann soll die Summe mit A5 0 sein. Damit muss A5 hier z.B. -10 sein.
Im Netz habe ich folgenden VBA-Code gefunden, den ich im VBA-Editor unter Module -> Modul1 eingetragen habe:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = „A1:A4“ Then
Range(„A6“).GoalSeek Goal:=0, ChangingCell:=Range(„A5“)
End If
End Sub
Die Datei habe ich als xlsm gespeichert und beim neu öffnen Makros aktiviert. Wenn ich jetzt in den Zellen A1:A4 eine Zahl ändere, dann wird A5 einfach nicht geändert.
Ich habe noch keine große Erfahrung mit VBA, aber der Code ist für mich recht plausibel. Woran kann es also liegen, dass A5 hier nicht geändert wird, dass A6 den Wert 0 annimmt?
Viele Grüße
Stefan