Zwei MsgBoxen nacheinander

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

Betrifft: Zwei MsgBoxen nacheinander
von: Wolfgang Friese
Geschrieben am: 24.11.2003 14:14:11

Tach zusammen,

ich habe eine UserForm mit vielen Textfeldern erstellt. In das Textfeld "txtAdresse" soll auf jeden Fall ein Wert eingegeben werden. Dieses Problem habe ich mit Hilfe des Forums lösen können. Wenn nun kein Wert in das Textfeld eingegeben wird erscheint die Meldung:

Meldung = MsgBox("Erstes Zeichen ein Buchstabe", vbRetryCancel + vbExclamation, Meldungsfenster)

und der Anwender kann wählen ob er einen neuen Versuch starten will oder nicht. Bei vbRetry läuft alles wunschgemäß.

Wenn der Anwender vbCancel wählt wird die Sub cmdEnd_Click() aufgerufen. Hier kann nochmal gewählt werden zwischen Beenden und weitermachen. Wenn nun auf die Frage Beenden mit nein geantwortet wird soll der Focus wieder auf das Feld
"txtAdresse" gesetzt werden und der Cursor dort blinken.

Hier mein Problem: Der Cursor blinkt im folgenden Feld "txtPLZ" und nicht im Feld "txtAdresse"

Wer weiß da Rat?

'Prüfen ob das Feld Adressen eine Eingabe hat, Zwangseingabe


Private Sub txtAdresse_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Meldung
If Me.txtAdresse.Text = "" Or IsNumeric(txtAdresse) = True Then
    
      Meldung = MsgBox("Erstes Zeichen ein Buchstabe", vbRetryCancel + vbExclamation, Meldungsfenster)
       
 
  
   If Meldung = vbRetry Then
    Me.txtAdresse = ""
     Me.txtAdresse.SetFocus
      Cancel = True
     End If
             End If
         
   If Meldung = vbCancel Then Call cmdEnd_Click
   
End If
End Sub





Private Sub cmdEnd_Click()
Dim EndMeldung
EndMeldung = MsgBox("Wollen Sie die Eingabe beenden?", vbYesNo + vbQuestion)
        If EndMeldung = vbYes Then End 'Beendet das Makro richtig
    
        
        If EndMeldung = vbNo Then 'Funktioniert nicht, wenn vorher die MSGBOX
        Me.txtAdresse = ""        ' Wiederholen Abbrechen   aufgerufen wurde
        Me.txtAdresse.SetFocus
        Cancel = True
    End If
End Sub


Vielen Dank im Voraus

Wolfgang
Bild


Betrifft: Setfocus?
von: Michael Scheffler
Geschrieben am: 24.11.2003 14:43:15




Bild

Beiträge aus den Excel-Beispielen zum Thema " Zwei MsgBoxen nacheinander"