VBA Erweiterung Anmeldung
05.01.2023 17:00:50
Luna
ich habe mal wieder ein Problem welches ich nicht lösen kann. Ich habe mir eine Userform zum anmelden mit Passwort erstellt. Je nachdem wer sich anmeldet sind bestimmte Tabellenblätter sichtbar. Das habe ich natürlich nicht alleine geschaft sondern einem tollen Video von Kai Weissmann in YouTube nachgebaut. Kann ich nur empfehlen. Ich stelle den Code mal rein.
Private Sub bttnAnmelden_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Dim rng As Range
Dim ws As Worksheet
'Benutzername suchen
Set rng = Range("tblZugriffsrechte[Benutzername]").Find(what:=txtBenutzername.Value, lookat:=xlWhole)
'Prüfen ob Benutzername angelegt
If rng Is Nothing Then
'Benutzer benachrichtigen
MsgBox "Benutzer existiert nicht"
'Prozedur beenden
Exit Sub
End If
'Prüfen ob Passwort korrekt ist
If rng.Offset(0, 1).Value txtPasswort.Value Then
'Benutzer benachrichten
MsgBox "Das Passwort ist nicht korrekt"
'Prozedur beenden
Exit Sub
End If
'Prüfen ob Benutzer Supervisor is
If rng.Offset(0, 2).Value = "Admin1" Then
'Schleife über alle Tabellenblätter
For Each ws In ThisWorkbook.Worksheets
'Tabellenblatt einblenden
ws.Visible = xlSheetVisible
Next ws
ElseIf rng.Offset(0, 2).Value = "Benutzer" Then
'Schleife über alle Tabellenblätter
For Each ws In ThisWorkbook.Worksheets
'Prüfen
If ws.Name "Menge" And ws.Name "Grafik" Then
'Tabellenblatt einblenden
ws.Visible = xlSheetVisible
End If
Next ws
End If
If rng.Offset(0, 2).Value = "Admin" Then
'Schleife über alle Tabellenblätter
For Each ws In ThisWorkbook.Worksheets
'Prüfen
If ws.Name "Zugriffsrechte" And ws.Name "Daten Grapas" And ws.Name "Hilfsdaten" Then
'Tabellenblatt einblenden
ws.Visible = xlSheetVisible
End If
Next ws
End If
'UserForm schliessen
Unload Me
End Sub
Was ich jetzt gerne hätte, wenn möglich, das je nachdem welcher Benutzer sich anmeldet eine Nummer in das Tabellenblatt "Menge" in die Zelle "F1" eingetragen wird.Durch diese Nummer werden Pfade bestimmt wo derjenige Benutzer hinterher automatisch seinen Bericht speichert. Bisher gibt jeder Benutzer seine Kennzahl händisch ein. Die Frage ist ob man das in Abhängigkeit des Passwortes oder des Benutzernamens machen kann? Ich habe die Kennzahlen in dem Tabellenblatt "Zugriffsrechte" in der Tabelle ("tblZugriffsrechte[Kennzahl]"). Das wäre die Zahl die ich dann gerne automatisch im Tabellenblatt "Menge" in die Zelle "F1" hätte.
Ich hoffe ich konnte mein Anliegen einigermaßen erklären und vielen Dank wie immer an alle die sich die Zeit nehmen um zu helfen.
Luna