Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Msg Box < 0
#1
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
Antworten Top
#2
Hallo,

nimm das Calculate-Ereignis.
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • Leonhard
Antworten Top
#3
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
[-] Folgende(r) 1 Nutzer sagt Danke an Lutz Fricke für diesen Beitrag:
  • Leonhard
Antworten Top
#4
Verwende die eingebaute Option 'Data Validation' (Daten Prüfung ?)
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • Leonhard
Antworten Top
#5
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?
Antworten Top
#6
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
Antworten Top
#7
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:
  • Leonhard
Antworten Top
#8
Hallo Leonhard,

nimm
Code:
If Sheets("Tabelle1").Cells("AA5") < 0 Then

Gruß,
Lutz
[-] Folgende(r) 1 Nutzer sagt Danke an Lutz Fricke für diesen Beitrag:
  • Leonhard
Antworten Top
#9
Hallo,,


(17.01.2020, 11:33)Werner.W schrieb: Wo du diese Eingabe machst, hast du uns aber bisher nicht verraten.
Zitat:
(17.01.2020, 09: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
Antworten Top
#10
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
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste