Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

MsgBox soll nur einmal erscheinen

Forumthread: MsgBox soll nur einmal erscheinen

MsgBox soll nur einmal erscheinen
17.07.2007 10:45:39
Micha
Halle Excel Experten,
ich habe in eine Excel Tabelle 2 MsgBoxen eingebaut, die über eine If - Then Abfrage erscheinen. Beim weiteren bearbeiten der Tabelle läuft diese Abfrage natürlich weiter und die MsgBox öffnet sich nach jeder Eingabe. Gibt es ein Möglichkeit die MsgBox nur einmal anzeigen zu lassen und dann den Prozess der If Abfrage zu beenden. Ich möchte also erreichen, das wenn die If Bedingung zutrifft die MsgBox (nur einmal) erscheint und danach nicht mehr, das heißt die If - Abfrage soll nach einmaligen Durchlauf nicht mehr starten. Wichtig ist der einmalige Durchlauf - nach Bestätigen der MsgBox mit "ok" - soll die Prozedur nicht mehr ausgeführt werden - und auch keine MsgBox mehr erscheinen. Ich hoffe das war halbwegs verständlich und ich bekomme eine Lösung.
Hier meine Abfrage:

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("L2").Value = "ACHTUNG! -VERARBEITER FALSCH- BITTE PRÜFEN" Then
MsgBox "Bitte Verarbeiter prüfen!!" & vbLf & "" & vbLf & "Ich brauche die Handynummer!"
&  _vbLf & "" & vbLf & "         - DANKE -", vbInformation, "SEHR WICHTIG!!"
End If
If Range("F1").Value = "Holz" Then
MsgBox "ACHTUNG HOLZFASSADE" & vbLf & "" & vbLf & "WENN NEUER HAUSTYP:" & vbLf & "" & vbLf & _
_  "+ VENTILACK WEISS FÜR DIE UNTERSCHLÄGE", vbInformation, "WICHTIGER HINWEIS"
End If
End Sub


Viele Grüße Micha

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: MsgBox soll nur einmal erscheinen
17.07.2007 10:49:00
Rudi
Hallo,

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("L2").Value = "ACHTUNG! -VERARBEITER FALSCH- BITTE PRÜFEN" Then
MsgBox "Bitte Verarbeiter prüfen!!" & vbLf & "" & vbLf & "Ich brauche die Handynummer!"
&  _vbLf & "" & vbLf & "         - DANKE -", vbInformation, "SEHR WICHTIG!!"
Exit Sub
End If
If Range("F1").Value = "Holz" Then
MsgBox "ACHTUNG HOLZFASSADE" & vbLf & "" & vbLf & "WENN NEUER HAUSTYP:" & vbLf & "" & vbLf & _
_
_  "+ VENTILACK WEISS FÜR DIE UNTERSCHLÄGE", vbInformation, "WICHTIGER HINWEIS"
End If
End Sub


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige
AW: MsgBox soll nur einmal erscheinen
17.07.2007 10:50:00
Matthias
Hallo Micha,
mein Vorschlage:

Private Sub Worksheet_Change(ByVal Target As Range)
Static m1 As Boolean, m2 As Boolean
If Not m1 And Range("L2").Value = "ACHTUNG! -VERARBEITER FALSCH- BITTE PRÜFEN" Then
m1 = True
MsgBox "Bitte Verarbeiter prüfen!!" & vbLf & "" & vbLf & "Ich brauche die Handynummer!" & _
vbLf & "" & vbLf & "         - DANKE -", vbInformation, "SEHR WICHTIG!!"
End If
If Not m2 And Range("F1").Value = "Holz" Then
m2 = True
MsgBox "ACHTUNG HOLZFASSADE" & vbLf & "" & vbLf & "WENN NEUER HAUSTYP:" & vbLf & "" & vbLf &  _
_
"+ VENTILACK WEISS FÜR DIE UNTERSCHLÄGE", vbInformation, "WICHTIGER HINWEIS"
End If
End Sub


Gruß Matthias

Anzeige
AW: MsgBox soll nur einmal erscheinen
17.07.2007 11:01:00
Micha
Hallo Matthias,
supi!!!!
DANKE - Das ging aber fix und es funktioniert, so wie ich es mir gedacht habe.
Ich bin begeistert!!
Gruß Micha

AW: MsgBox soll nur einmal erscheinen
17.07.2007 10:52:46
Armin
Hallo Micha,
so müsste es gehen:

Private Sub Worksheet_Change(ByVal Target As Range)
DIM vergl as String
verg  ="ACHTUNG! -VERARBEITER FALSCH- BITTE PRÜFEN"
If Range("L2").Value = verg Then
MsgBox "Bitte Verarbeiter prüfen!!" & vbLf & "" & vbLf & "Ich brauche die Handynummer!"
&  _vbLf & "" & vbLf & "         - DANKE -", vbInformation, "SEHR WICHTIG!!"
verg=""
End If
If Range("F1").Value = "Holz" Then
MsgBox "ACHTUNG HOLZFASSADE" & vbLf & "" & vbLf & "WENN NEUER HAUSTYP:" & vbLf & "" & vbLf & _
_
_  "+ VENTILACK WEISS FÜR DIE UNTERSCHLÄGE", vbInformation, "WICHTIGER HINWEIS"
End If
End Sub


Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18