Logon Forum - Dlookup probleem

Status
Niet open voor verdere reacties.

Mooijman

Gebruiker
Lid geworden
9 nov 2008
Berichten
6
Beste mensen,

Ik heb een probleem waarvan ik al tig oplossingen heb geprobeerd en zelfs het over kopieren 1 op 1 hielp niet. Vandaar dat ik zelf een topic ben begonnen misschien dat ik iets over het hoofd zie.

Het rode gedeelte leverd een error op die als volgt is : "Fout 2001 tijdens uitvoering: U hebt de vorige bewerking geannuleerd."

-Ik gebruik 1 tabel genaamd "tblEmployees"
-1 keuzemenu "cboWerknemer" afhankelijk van de tabel tblEmployees en veld strEmpName
-1 textbox onafhankelijk
- button "btnAanmelden"

De table opzet is als volgt:
IngEmpID = autonummeriek
strEmpPassword = Text
strEmpName = Text

Gebruikte wachtwoord voor iederen is "test" en gebruikers zijn "Roland", Kees, margarita, maurice.

De code is als volgt:
------------------------------------------------------------------------------
Code:
Option Compare Database
Private intLogonAttempts As Integer

Private Sub Form_Open(Cancel As Integer)
'On open set focus to combo box
Me.cboWerknemer.SetFocus
End Sub

Private Sub cboWerknemer_AfterUpdate()
'After selecting user name set focus to password field
Me.txtWachtwoord.SetFocus
End Sub

Private Sub btnAanmelden_Click()

'Check to see if data is entered into the UserName combo box

    If IsNull(Me.cboWerknemer) Or Me.cboWerknemer = "" Then
            MsgBox "You must enter a User Name.", vbOKOnly, "Required Data"
            Me.cboWerknemer.SetFocus
        Exit Sub
    End If

'Check to see if data is entered into the password box

    If IsNull(Me.txtWachtwoord) Or Me.txtWachtwoord = "" Then
            MsgBox "You must enter a Password.", vbOKOnly, "Required Data"
            Me.txtWachtwoord.SetFocus
        Exit Sub
    End If

'Check value of password in tblEmployees to see if this matches value chosen in combo box
    
    If Me.txtWachtwoord.Value = DLookup("strEmpPassword", "tblEmployees", "[IngEmpID]=" & Me.cboWerknemer.Value) Then        
        lngMyEmpID = cboWerknemer.Value

'Close logon form and open splash screen
        
        DoCmd.Close acForm, "frmLogon", acSaveNo
        DoCmd.OpenForm "frmOpstart"

        Else
        MsgBox "Password Invalid.  Please Try Again", vbOKOnly, "Invalid Entry!"
        Me.txtWachtwoord.SetFocus
    End If
    
'If User Enters incorrect password 3 times database will shutdown
    
    intLogonAttempts = intLogonAttempts + 1
    If intLogonAttempts > 3 Then
        MsgBox "You do not have access to this database.  Please contact your system administrator.", vbCritical, "Restricted Access!"
        Application.Quit
    End If
    
End Sub
------------------------------------------------------------------------------

Ik hoop dat iemand mij hiermee kan helpen. Ik heb allerlei dingen geprobeerd van veldtype veranderen naar nummeriek als syntax aanpassen door middel van de "" te verplaatsen.

Bij voorbaat dank!
 
Laatst bewerkt:
Allereerst welkom op het forum! Kun je de code uit je berichtje nog opmaken met de CODE knop? Dat maakt hem een heel stuk leesbaarder. Overigens ontbreekt het belangrijkste: de code van de keuzelijst cboWerknemer.
 
Laatst bewerkt:
Hey,

Bedankt voor de reactie hoop dat het zo leesbaar is. :)
En de keuze van de cbowerknemer heb ik gedefinieerd bij de eigenschappen van het menu en niet in de code verwerkt.
 
Met je antwoord kan ik nog niet zoveel; we hebben toch de Rijbron code van de keuzelijst nodig, vrees ik. Ik snap ook niet wat je bedoelt met:
En de keuze van de cbowerknemer heb ik gedefinieerd bij de eigenschappen van het menu en niet in de code verwerkt.
Een keuzelijst maak je meestal met een wizard, of zelf. In het laatste geval moet je ook zelf de rijbron definieren. Je verwerkt de keuzelijst wel degeljk in de code, want je gebruikt het resultaat ervan! En daar ligt het probleem, vermoed ik. Dus bij deze nogmaals: de code van de keuzelijst...
 
Beste,

Sorry voor de late reactie.

Maar ik heb bij invoervak CboWerknemer heb ik tblEmployees als rijbron keuze ingevoerd maar hierdoor wil de functie niet werken.
 
Je DLookup zou op zich geen foutmelding mogen opleveren, als tenminste het eerste veld in [tblEmployees] ook inderdaad het veld [IngEmpID] is. Waar heb je het probleem? De rode regel is namelijk weer zwart ;)
 
Ik heb het probleem al op een andere manier opgelost, heb er op die manier meteen rechten op niveau in kunnen verwerken.

Bedankt voor de hulp in ieder geval!!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan