cmdBUtton Abbrechen will nicht...

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: cmdBUtton Abbrechen will nicht...
von: P-Quest :-)
Geschrieben am: 20.07.2015 19:58:16

...das was ich will.
Hallo,
Ich habe in einem Userform eine Abbrechen Schaltfläche.

Private Sub cmdCancel_Click()
    End 'oder Unload me
End Sub
In dem Userform gibt es ein Textfeld (txtMenge), dessen Inhalt auf richtigkeit geprüft werden muss.
Private Sub txtMenge_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    txtMenge = Trim(txtMenge.Value)
    If Val(txtMenge.Value) = 0 Then
        If Not UFCloseMode Then MsgBox "Bitte geben Sie einen Wert größer 0 ein!", vbCritical, " _
Falsche Eingabe : " & UFCloseMode
    Else
        If Not cbID = "" Then
            Call WertBer
        Else
            txtWert.Value = 0
        End If
    End If
End Sub
Jetzt hänge ich aber durch If not UFCloseMode... in der Schleife fest. Dieses If not UFclose soll dafür sorgen, dass die Msgbox NICHT angezeigt wird, wenn ich auf das Schließen-Kreuz klicke.
Wie kann ich nun dafür sorgen, dass die Meldung auch übersprungen wird, wenn ich die Abbrechen Schaltfläche betätige?
Gruß,
Peter

Bild

Betrifft: AW: cmdBUtton Abbrechen will nicht...
von: Mullit
Geschrieben am: 20.07.2015 21:53:09
Hallo,
vielleicht ein umgekehrter Anssatz: Du zeigst sie dann an wenn Du nicht auf Schließenkreuz klickst:

Option Explicit
Private Sub CommandButton1_Click()
Unload Me
End Sub
Private Sub CommandButton2_Enter()
  MsgBox "Bitte geben Sie einen Wert größer 0 ein!"
End Sub
Private Sub CommandButton3_Enter()
  MsgBox "Bitte geben Sie einen Wert größer 0 ein!"
End Sub
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
' Deine Box: weiterer code....
End Sub
Private Sub TextBox2_Enter()
MsgBox "Bitte geben Sie einen Wert größer 0 ein!"
End Sub

Gruß, Mullit

Bild

Betrifft: AW: cmdBUtton Abbrechen will nicht...
von: P-Quest :-)
Geschrieben am: 20.07.2015 23:03:33
Mit deinem Codebeispiel kann ich ja nun gar nichts anfangen.
Warum Bitte soll ich die Msgbox anzeigen, wenn ich einen cmdbtn anklicke? Und warum soll ich noch eine weitere TxtBox mit der Messagebox...ach was...lohnt sich nicht darüber nachzudenken, aber danke für deinen Versuch.

Bild

Betrifft: AW: cmdBUtton Abbrechen will nicht...
von: Mullit
Geschrieben am: 20.07.2015 23:16:51
Tja dann ist das so, Du wirst ja wohl noch andere Controls auf der Form haben, um das Exit-Event zu triggern, dafür dienten die Bsp-Controls von mir, in denen rufst Du die Box auf, noch besser wäre es statt einer Just-in-Time Prüfung bei Betätigung eines OK-Buttons die Abfrage zu machen...

Bild

Betrifft: AW: cmdBUtton Abbrechen will nicht...
von: P-Quest :-)
Geschrieben am: 21.07.2015 01:29:46
Vielleicht hat ja jemand anders die Idee für eine Lösung.

Bild

Betrifft: AW: cmdBUtton Abbrechen will nicht...
von: Beverly
Geschrieben am: 21.07.2015 07:44:05
Hi Peter,
versuche es mal auf diesem Weg (ich hoffe, ich habe dein Anliegen richtig interpretiert):

Option Explicit
Dim blnSchliessen As Boolean
Private Sub txtMenge_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    If blnSchliessen = False Then
        txtMenge = Trim(txtMenge.Value)
        If Val(txtMenge.Value) = 0 Then
            MsgBox "Bitte geben Sie einen Wert größer 0 ein!", vbCritical, "Falsche Eingabe : "
        Else
            If Not cbID = "" Then
                Call WertBer
            Else
                txtWert.Value = 0
            End If
        End If
    End If
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    blnSchliessen = True
End Sub



Bild

Betrifft: AW: cmdBUtton Abbrechen will nicht...
von: P-Quest :-)
Geschrieben am: 21.07.2015 09:44:11
Hallo Karin,
du musst meine Ausführungen wohl richtig interpretiert haben, denn es klappt.
Besten Dank,
Peter

 Bild

Beiträge aus den Excel-Beispielen zum Thema "cmdBUtton Abbrechen will nicht..."