Access-o-Mania

Access-Forum (Deutsch/German) => Access-Hilfe => Thema gestartet von: mustermann am April 28, 2016, 13:01:35

Titel: Groß - und Kleinschreibung ignorieren
Beitrag von: mustermann am April 28, 2016, 13:01:35
Hallo Gemeinde,

mal eine einfache Frage an Euch. Wie muss ich meinen unten angefügt Code erweitern, damit bei der Eingabe des Benutzernamens die Groß- bzw. Kleinschreibung ignoriert wird)

Private Sub Login_Click()
Benutzername.SetFocus
If Benutzername = "admin" And Passwort = "12345678-" Then
    MsgBox "Willkommen"
    DoCmd.Close
    DoCmd.OpenForm "RoboterF"
ElseIf ...

End Sub

Danke im Voraus

MfG

Mustermann
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: Wurliwurm am April 28, 2016, 13:05:40
If strconv(Benutzername.value, vbuppercase) = strconv("admin", vbuppercase) then
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: MzKlMu am April 28, 2016, 13:14:11
Hallo,
die NichtBeachtung von Groß und Kleinschreibung (in VBA) ist doch Standard. Das musst Du verstellt haben. Was steht im Kopf (ganz oben) des Klassen/Formular Moduls ?
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: mustermann am April 28, 2016, 13:45:27
ich weiß nicht genau welchen Bereich Du meinst, daher habe ich mal ein Screenshot gemacht)
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: mustermann am April 28, 2016, 13:48:29
Welche Einstellung müssen gesetzt sein, damit das Nichtbeachten von Groß- und Kleinschrift wieder, ohne VBA, funktioniert? 
Danke
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: mustermann am April 28, 2016, 13:52:11
Wenn ich jetzt mehrere Benutzer habe (sind ca. 130) muss ich dann von jedem den Benutzernamen in dem Code in   ""     schreiben? ::) 

f strconv(Benutzername.value, vbuppercase) = strconv("admin", vbuppercase) then

Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: DF6GL am April 28, 2016, 14:16:02
Hallo,


vergleich doch so  (ohne jetzt auf die Behandlung von "leeren" Passwörtern einzugehen):

If  StrComp(Passwort, DLookup("PW", "tblUsers", "Username='" & Benutzername & "'"), vbBinaryCompare) = 0 Then
.
.

Das Passwort für den Benutzer wird aus der tblUsers (erzeuge sie , falls sie noch nicht existiert)  gelesen und binär mit dem eingegebenen PW verglichen....


Beim Benutzernamen ist es egal, ob Groß- oder Kleinbuchstaben....
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: MzKlMu am April 28, 2016, 14:45:09
Hallo,
ergänze wie folgt:

Option Compare Database ' Diese Zeile einfügen
Option Explicit
.
.


Zitat von: Auszug aus der Access HilfeEnthält ein Modul keine Option Compare-Anweisung, so ist Binary das verwendete Standardverfahren.
Das heißt, ohne diese Option wird Groß/Kleinschreibung berücksichtigt.
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: mustermann am April 28, 2016, 14:51:59
Danke MzKlMU !
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: mustermann am April 28, 2016, 14:57:34
Jetzt mal zurück zum Beitrag von DF6GL.
Danke für den Vorschlag werde ich auf jeden Fall machen, da ich noch ein Registrierungsformular einbauen möchte, kommt die tblUsers genau richtig.

Ich habe aber jedes Formular in 2 Ausführungen  - für Mitarbeiter die Adminrechte haben und für Mitarbeiter die keine Adminrechte haben - wenn ich jetzt die tblUsers erstelle und das PW mit dem eingegeben verglichen wird, wie kann ich nun die Zuweisung für die Mitarbeiter machen - also spricht bei einem (Adminrechte) wird das FormularF geöffnet, beim anderen (keine Adminrechte) wird das FormularF_Mitarbeiter geöffnet...

Kann mir da Jemand helfen?

danke
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: MaggieMay am April 28, 2016, 15:13:51
Hi,

dazu fügst du in der Benutzertabelle ein Kennzeichen hinzu, damit du unterscheiden kannst ob es sich um einen Mitarbeiter oder Admin handelt. Das liest du genauso aus wie das Passwort, das du ja für den Vergleich brauchst.

Ich würde es mir aber noch einmal gut überlegen, ob du wirklich alle Formulare doppelt anlegen (und pflegen) willst. Evtl. Sperrungen oder Ausblendungen lassen sich auch dynamisch beim Öffnen der Formulare vornehmen.
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: mustermann am Mai 11, 2016, 16:01:37
Du sagst es - war ein ziemlicher Aufwand, da ich nicht wusste wie ich das anders lösen könnte, habe deshalb  die Formulare jeweils doppelt erstellt :-\ :-\

Habe jetzt ein Profilformular erstellt, habe dazu wie DF6GL geraten hat, eine Tabelle tblUsers erstellt. Nun möchte ich dass aber nur die Daten vom eingeloggten Mitarbeiter in diesem Profilformular angezeigt werden...
Wie kann ich das machen?
Also mein Benutzername beim LoginFormular entspricht dem Username beim ProfilFormular und zu diesem Username gibt es in der tblUsers Informationen wie Vorname, Nachmache etc. und diese sollen der jeweils eingeloggten Person sichtbar sein. Wie kann ich das realisieren?)
Danke Euch
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: DF6GL am Mai 11, 2016, 16:10:08
Hallo,


zusätzlich zu PW und Admin-Kennzeichen liest Du die ID des Users in eine globale Variable ("pblUserID") aus.  Mit diesem ID-Wert wird das Profil-Formular beim Öffnen gefiltert:


Docmd.Openform "frmProfil",,,"UserID = " & pblUserID
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: mustermann am Mai 13, 2016, 08:38:16
komme nicht ganz dahinter...
so wie Du es geschrieben hast klappt es nicht! Muss die Variable nicht noch definiert werden?

MfG
Titel: Re: Groß - und Kleinschreibung ignorieren
Beitrag von: DF6GL am Mai 13, 2016, 11:40:39
Hallo,

ja natürlich... und weil es sich um eine globale Variable handelt, muss die Deklaration in einem Standardmodul stehen:

Option Compare Database
Option Explicit
Public pblUserID As Long



Diese Variable setzt Du, wie beschrieben, mit dem ID_Wert des Benutzernamen-Datensatzes