ich habe ein Programm bei dem man einen Kassierer über ein Menü auswählen kann.
Wenn man eine Selektion ändert, wird dieser Wert eingetragen:
Option Explicit
Dim bolUFEnde As Boolean
Private Sub UserForm_Initialize()
bolUFEnde = False 'UserForm wird bei Änderung der ComboBox noch nicht geschlossen !
Me.ComboBox1.RowSource = "$A$60:$A$89"
Me.ComboBox1.ListIndex = 0
bolUFEnde = True 'Erst jetzt wird das UserForm bei Änderung der Combobox geschlossen !
End Sub
Private Sub ComboBox1_Change()
[M35] = ComboBox1.Value
If bolUFEnde Then Unload Me
End Sub
Private Sub CommandButton1_Click()
[M35] = ComboBox1.Value
Unload Me
End Sub
Das klappt auch gut.Jetzt sollen die einzelnen MA aber per Kennwort angemeldet werden.
Ich habe es mal so versucht:
Option Explicit
Dim bolUFEnde As Boolean
Private Sub UserForm_Initialize()
bolUFEnde = False 'UserForm wird bei Änderung der ComboBox noch nicht geschlossen !
Me.ComboBox1.RowSource = "$A$60:$A$89"
Me.ComboBox1.ListIndex = 0
bolUFEnde = True 'Erst jetzt wird das UserForm bei Änderung der Combobox geschlossen !
End Sub
Private Sub ComboBox1_Change()
Dim Frage As String
Select Case ComboBox1.Value
Case Is = Range("A60").Value
Frage = InputBox("Hallo" & Range("A60").Value & vbLf & "Bitte Passwort eingeben", " _
Login")
If StrPtr(Frage) = 0 Then Exit Sub 'Abbrechen gedrückt
If Frage = "1111" Then [M35] = ComboBox1.Value Else MsgBox ("Falsches Kennwort")
Case Is = Range("A61").Value
Frage = InputBox("Hallo" & Range("A61").Value & vbLf & "Bitte Passwort eingeben", "Login") _
If StrPtr(Frage) = 0 Then Exit Sub 'Abbrechen gedrückt
If Frage = "2222" Then [M35] = ComboBox1.Value Else MsgBox ("Falsches Kennwort")
End Select
If bolUFEnde Then Unload Me
End Sub
Private Sub CommandButton1_Click()
Dim Frage As String
Select Case ComboBox1.Value
Case Is = Range("A60").Value
Frage = InputBox("Hallo" & Range("A60").Value & vbLf & "Bitte Passwort eingeben", " _
Login")
If StrPtr(Frage) = 0 Then Exit Sub 'Abbrechen gedrückt
If Frage = "1111" Then [M35] = ComboBox1.Value Else MsgBox ("Falsches Kennwort")
Case Is = Range("A61").Value
Frage = InputBox("Hallo" & Range("A61").Value & vbLf & "Bitte Passwort eingeben", " _
Login")
If StrPtr(Frage) = 0 Then Exit Sub 'Abbrechen gedrückt
If Frage = "2222" Then [M35] = ComboBox1.Value Else MsgBox ("Falsches Kennwort")
End Select
Unload Me
End Sub
Das commandButton_click geht auch wunderbar.Aber beim ComboBox1_Change(), bzw. beim Initialisieren des Formulars
läuft er gleich in die Kennwortabfrage, wenn ich die dann einfach irgendwie bestätige läuft er in das Formular und dann kommt noch mal die Kennwortabfrage.
Also eigentlich geht es aber er ruft einmal zuviel die Kennwortabfrage auf.
Was mache ich falsch?
Vielen Dank für eure Hilfe.
Viele Grüße Lutz