Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1588to1592
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

Message Box wenn Zellwert höher

Message Box wenn Zellwert höher
17.11.2017 11:47:34
Hans
Hallo Forum,
ich habe in meinem Tabellenblatt in einer Zelle eine Formellösung stehen die mir anzeigt wenn der Zellwert in Zelle "T37" größer als der Wert in Zelle "BQ20" ist.
Ich hätte gern (aus Platzgründen) dort eine MessageBox angezeigt bekommen....
Leider bekomme ich das alleine nicht hin. Vergleichbare Makros beziehen sich immer auf negative Zahlen und nicht auf zwei Zellbezüge.
Vielen Dank für eure Hilfe
Hans

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Message Box wenn Zellwert höher
17.11.2017 11:58:04
JoNNy
Hallo Hans,
also wenn du in das Tabellenblatt den Code einfügst:

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("T37").Value > Range("BQ20").Value Then
MsgBox "Hinweis!"
End If
End Sub
dann sollte das klappen.
Gruß JoNNy
AW: Message Box wenn Zellwert höher
17.11.2017 12:15:44
Hans
Moin moin JoNNy,
vielen Dank.... Meine Frage, wohin mit dem Code? Diese Arbeitsmappe?
Hans
AW: Message Box wenn Zellwert höher
17.11.2017 12:20:35
JoNNy
Oh sorry ja ehm du musst dazu den VBA editor öffnen, das geht normal mit der Tastenkombi "Alt+F11".
Falls nicht dann musst du erst das hier machen:
https://support.office.com/de-de/article/Anzeigen-der-Registerkarte-Entwicklertools-e1192344-5e56-4d45-931b-e5fd9bea2d45
wenn der editor offen ist dann siehts du links deine Tabelle mit den einzelnen Blättern.
Und das Blatt das betroffen ist öffnest du mit doppeklick und in das Fenster das sich öffnet kommt dann der Code.
Ich weiß klingt erstmal aufwendig aber wenn dus einmal gemacht hast ist es beim nächsten kein Problem mehr. Und nicht vergessen die Tabelle unter dem Format .xlsm zu speichern sonst speichert er den Code nicht mit.
Gruß JoNNy
Anzeige
AW: Message Box wenn Zellwert höher
17.11.2017 12:30:43
Hans
Hallo JoNNy,
hab soweit alles gefunden und eingefügt.... geht aber trotzdem nicht... Kann es sein, weil ich schon ein Makro darin ausführe....
Das hier steht in dem Fenster:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("at2")) Is Nothing Then
On Error GoTo ErrorHandler
Application.EnableEvents = False
Target.Value = UCase(Target)
ErrorHandler:
Application.EnableEvents = True
End If
End Sub

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("T37").Value > Range("BQ20").Value Then
MsgBox "Hinweis!"
End If
End Sub

Hans
Anzeige
AW: Message Box wenn Zellwert höher
17.11.2017 13:11:17
Werner
Hallo Hans,
kann auch nicht gehen, weil das Change-Ereignis nur auslöst, wenn ein Wert in der Zelle (händisch) geändert wird. Bei dir ist das ja aber das Ergebnis einer Formelberechnung und das löst kein Change-Ereignis aus.
Wenn, dann müsstest du das Calculate-Ereignis des Blatts benutzen.
Private Sub Worksheet_Calculate()
Allerdings solltest du dir dabei über eines im klaren sein:
Das Calculate-Ereignis löst bei jeder Formelberechnung aus, egal wo auf deinem Blatt etwas berechnet wird.
Wenn du also irgendwo auf dem Blatt eine Formel einträgst oder irgendeine Formel berechnet wird, dann löst das Change-Ereignis aus und du bekommst die MessageBox angezeigt, auch wenn in den Zellen T37 und BQ20 gar nichts verändert wurde.
Die ganze Sache müsste anders aufgezogen werden. Du gibst ja in irgendeine Zelle einen Wert ein, der dazu führt, dass sich der Formelwert in T37 und/oder in BQ20 ändert. Diese Zelle müsste dann überwacht werden.
Gruß Werner
Anzeige
AW: Message Box wenn Zellwert höher
17.11.2017 13:40:46
Hans
Moin moin,
geht das denn über eine Hilfszelle?
zum Beispiel wenn in Zelle BQ19 der Zellwert <0; Userform ?
Hans
AW: Message Box wenn Zellwert höher
17.11.2017 13:41:18
Hans
Haken vergessen... noch offen
AW: Message Box wenn Zellwert höher
17.11.2017 13:40:58
JoNNy
Naja mit
If Target.Address(False, False) = "T37" or If Target.Address(False, False) = "BQ20"
End If
oder nicht ?
Gruß JoNNy
gelöst aber Zusatzfrage
17.11.2017 14:52:08
Hans
Hallo Forum,
ich hab das ganze hinbekommen, ging ganz einfach, aber nicht ohne eure Hilfe und Anstöße! Vielen Dank noch mal.. hier die Lösung:
Private Sub Worksheet_Calculate()
If Range("AH37") 
Nun meine Zusatzfrage:
Wie bekomme ich eine Weitere MessageBox hin, die sich auf die Zelle BQ19 bezieht?
Ich bekomme immer einen Laufzeitfehler angezeigt.....
Hans
Anzeige
AW: gelöst aber Zusatzfrage
17.11.2017 17:22:48
Hans
und wieder den Haken vergessen....
gelöst zweifel ich an.
18.11.2017 21:18:47
Werner
Hallo Hans,
eine zweite MessageBox einfach mit einer zweiten If Abfrage.
Private Sub Worksheet_Calculate()
If Range("AH37") 
Dass damit dein Problem gelöst ist, zweifel ich aber an.
Deine beiden MessageBoxen werden immer aufgerufen, sobald irgendwo auf dem Tabellenblatt eine Formelberechnung durchgeführt wird.
Ich kann mir nicht vorstellen, dass das deine Wunschlösung ist.
Nimm den Code einfach mal so wie er ist in dein Blatt auf. Gib dann in irgendeiner freien Zelle auf dem Blatt z.B. =1+1 ein und bestätige mit Enter.
Willst du das?
Ich habe dir schon einmal geschrieben, dass die Zelle (Zellen) überwacht werden müssen in die du Werte eingibst wodurch dann die Formel in AH37 bzw. BQ19 berechnet wird.
Gruß Werner
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige