Registriert seit: 17.05.2018
Version(en): 365
Hallo mal wieder =)
ich habe eigentlich ein simples Problem.. ich will gerne eine MsgBox angezeigt bekommen wenn der wert im Blatt Tabelle1, Zelle AA5 kleiner 0.
der Wert in AA5 errechnet sich aus einer Eingabe in einem anderen Blatt.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("AA5") < 0 Then
MsgBox "Bitte den Wert prüfen"
End If
End Sub
Ich habe den Code im Modul der Tabelle1. wenn ich nun aber in dem anderen Blatt Tabelle2 einen Wert eingebe der dafür sorgt das AA5 negativ wird bekomme ich keine Warnung.
Wie genau müsste ich das anpassen?
Beste Grüße
Leo
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo,
nimm das Calculate-Ereignis.
Gruß Stefan
Win 10 / Office 2016
Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:1 Nutzer sagt Danke an Steffl für diesen Beitrag 28
• Leonhard
Registriert seit: 06.09.2016
Version(en): 2016
Hallo Leonhard,
indem Du dein Worksheet_Change-Event nicht auf das Blatt mit der Zelle AA5 legst, sondern auf das Blatt, wo die Änderung angestoßen wird.
Gruß,
Lutz
Registriert seit: 29.09.2015
Version(en): 2030,5
Verwende die eingebaute Option 'Data Validation' (Daten Prüfung ?)
Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:1 Nutzer sagt Danke an snb für diesen Beitrag 28
• Leonhard
Registriert seit: 17.05.2018
Version(en): 365
Servus Lutz,
dann muss ich bei der Range Abfrage aber doch auf das Tabellenblatt der Zelle AA5 referenzieren?
Wie muss man das im Code anpassen?
Code:
If Range("Tabelle1AA5") < 0 Then
Oder bin ich da völlig falsch?
Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo,
der Wert ändert sich doch nach Eingabe in Tabelle2.
Dann kannst Du auch dort das Change Ereignis nutzen oder eben einfacher den Vorschlag von snb anwenden, auch in Tabelle2.
Gruß Atilla
Registriert seit: 05.09.2017
Version(en): 2013
Hallo Leonhard,
beim Calculate Ereignis kann Excel nicht unterscheiden, um welche Zelle es geht. Das Calculate löst immer dann aus, wenn irgenwo auf dem entsprechenden Blatt eine Formelberechnung ausgeführt wird.
Deshalb auch besser (den Hinweis hast du schon bekommen) die Zellen per Worksheet_Change überwachen in die du etwas eingibst, was dann letztlich die Berechnung in AA5 auslöst.
Wo du diese Eingabe machst, hast du uns aber bisher nicht verraten.
Gruß Werner
Folgende(r) 1 Nutzer sagt Danke an Werner.M für diesen Beitrag:1 Nutzer sagt Danke an Werner.M für diesen Beitrag 28
• Leonhard
Registriert seit: 06.09.2016
Version(en): 2016
Hallo Leonhard,
nimm
Code:
If Sheets("Tabelle1").Cells("AA5") < 0 Then
Gruß,
Lutz
Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo,,
(17.01.2020, 12:33)Werner.W schrieb: Wo du diese Eingabe machst, hast du uns aber bisher nicht verraten.
Zitat: (17.01.2020, 10:27)Leonhard schrieb: ... wenn ich nun aber in dem anderen Blatt Tabelle2 einen Wert eingebe der dafür sorgt das AA5 negativ wird bekomme ich keine Warnung.
...
Gruß Atilla
Registriert seit: 05.09.2017
Version(en): 2013
Hallo,
und was willst du mir damit jetzt sagen?
Er kann ja auch keine Warnung bekommen, wenn er die Zelle AA5 überwacht und das Ergebnis in AA5 eine Formelberechnung ist. Deshalb habe ich ja auch geschrieben, dass die Zelle überwacht werden muss, in der die Eingabe erfolgt.
Gruß Werner