visual usa query number form dlookup como vba ms-access access-vba ms-access-2010

vba - usa - ms access dlookup in query expression



DLookup no funciona cuando se usa una variable? (1)

userName e loginID son tipo de texto, por lo tanto, encierre el valor de loginID entre comillas.

DLookup("permissions", "Users", "userName = ''" & loginID & "''")

Tengo un código que se ejecuta en la carga de formulario:

Private Sub Form_Load() ''Declare the username variable Dim loginID As String ''Get the username from the environment array variable loginID = Environ("USERNAME") ''Pop up a message box stating the obvious and checking the variable is set MsgBox ("Hello " & loginID") ''Lookup the permissions of the user based on the windows logon MsgBox DLookup("permissions", "Users", "userName = " & loginID)

Cuando ejecuto este código, el cuadro de mensaje de "prueba" funciona y aparece mi ID de inicio de sesión de Windows, pero cuando el código continúa y llego al DBusuario, aparece un error de VBA:

2471 La expresión que ingresó como parámetro de consulta produjo este error: ''MORINDAV''

Si cambio la declaración Dlookup a esto:

MsgBox DLookup("permissions", "Users", "userName = ''loginID''")

Obtengo el error ''94'', uso no válido de Null.

Si mantengo la misma sintaxis que la anterior, pero ingreso manualmente el valor del usuario que estoy probando de esta manera:

MsgBox DLookup("permissions", "Users", "userName = ''MORINDAV''")

La declaración funciona y VBA me muestra un cuadro de mensaje con el nivel de permisos de ese usuario.

Estoy seguro de que es un problema de sintaxis, pero parece que no puedo hacer que el DLookup funcione mientras uso la variable: loginID