VBA userform Passwort Abfrage?


25.02.2022, 08:30

Oben Die Userform mit Textbox1 und Textbox2

Unten die Tabelle1 mit Username und Passwort.

1 Antwort

Den Inhalt des Usernamen kannst du mit
Worksheetfunction.Match() finden. (Funktioniert wie die VERGLEICH Funktion)
Die Zeile die hierzurückgegeben wird kann nun verwendet werden um in Spalte B das PW auszulesen.
meineZeile= Worksheetfunction.Match(User,Worksheets("Blatt1").Range("A1:A200"),0)
meinPW = Worksheets("Blatt1").("B" & meineZeile).Value
If meinPW = UserForm.TextBoxPW.Text then
UserForm.hide

Else

MSgBox "PW oder User falsch"
End if

Raphaelbx 
Fragesteller
 24.02.2022, 14:57

danke, ich habe jetzt eine userform mit 2 Textfeldern

textbox1 username und Textbox 2 Passwort. wie muss ich das in deinem Code einbauen? das er prüft ob die Eingabe in den beiden Textfeldern mit denen in der Tabelle übereinstimmen?

vielen Dank im Voraus

0
Raphaelbx 
Fragesteller
 24.02.2022, 14:58
@Raphaelbx

Und natürlich der Button, worin dann dein Code rein muss

1
IchMalWiederXY  24.02.2022, 17:56
@Raphaelbx

Doppelklick auf den Button damit der Code Editor aufgeht.
Private Sub Button1_Click
Dim meineZeile, meinPW
meineZeile= Worksheetfunction.Match(User,Worksheets("Blatt1").Range("A1:A200"),0)

meinPW = Worksheets("Blatt1").("B" & meineZeile).Value

If meinPW = UserForm.TextBoxPW.Text then
MSgBox "Access Granted"

UserForm.hide

Else

MSgBox "PW oder User falsch"

End if
End sub

0
Raphaelbx 
Fragesteller
 25.02.2022, 08:26
@IchMalWiederXY

Hey, sorry das ich nochmal fragen muss.

Code ist drin allerdings wird mir die Zeile rot angezeigt. Ich habe oben mal Bilder von meiner Tabelle sowie Userform angehängt.

Namen sind unverändert von der Tabelle und auch der Elemente der Userform. Habe es auch soweit abgeändert.

Funktioniert aber leider nicht.

Falsche Zeile: meinPW = Worksheets("Tabelle1").("B" & meineZeile).Value

Vielleicht findest du ja den Fehler. Wäre klasse. Vielen Dank schonmal im voraus.

Mein kompletter Code:

Private Sub Button1_Click()

Dim meineZeile, meinPW

meineZeile = WorksheetFunction.Match(User, Worksheets("Tabelle1").Range("A1:A200"), 0)

meinPW = Worksheets("Tabelle1").("B" & meineZeile).Value

If meinPW = UserForm.TextBox2.Text Then

MsgBox "Access Granted"

UserForm.Hide

Else

MsgBox "PW oder User falsch"

End If

End Sub

0
IchMalWiederXY  25.02.2022, 17:20
@Raphaelbx

Ich weiß nicht ob deine Blatt "Tabelle1" heißt !
Ich weiß nicht ob die UserNamen in Spalte A genau in diesem Bereich stehen.
etc.
Dies ist ein Beispiel Code den du auf dein Sheet anpassen mußt.

0
Raphaelbx 
Fragesteller
 25.02.2022, 18:00
@IchMalWiederXY

das neu benennen ist kein Problem. Könntest du mir vllt in die Routine noch ne 2te userform textbox einbauen. Da ja username und Passwort jeweils in eine textbox in der Form eingegeben und dann mit dem Button Bestätigt wird

danke

0