Marcos, vamos por partes
1º ¿Hay algún cuadro de texto en el formulario que se llame Userlevel o es una variable?
2º La instrucción
Userleve=Isnull....
Por más que la mire no la entiendo. Después hablaré de Isnull. Le estás diciendo que busque en el campo Frmpacientes de la tabla tblUsuarios...¿es qué hay algún campo que se llame así?
Por otro lado le dices que busque en aquellos registros en que FrmPacientes=0...¿Pero no estás buscando precisamente ese valor?
Pero bueno, vamos a suponer que te encontrara algo, que lo dudo. No sé para que sirve la instrucción Isnull delante.
Por ejemplo, supongamos que tengo la tabla, como dices
Donde se supone que si tiene la casilla marcada es que tiene autorización y si no está marcada que se jo...
Y tengo un formulario, con una etiqueta donde aparece el nombre del usuario y un botón
Como el usuario es Pepe y en la tabla, en el campo FrmPacientes no tiene la casilla marcada, cuando pulso el botón
En este caso el código, tratando de hacerlo igual que tú, es
Private Sub Comando27_Click()
Dim userlevel As Byte
userlevel = DLookup("frmpacientes", "tblUsuarios", "usuario='" & Me.LblUsuarioActivo.Caption & "'")
If userlevel = -1 Then
DoCmd.OpenForm "formulario1"
Else
MsgBox "No tiene autorizacion para esto", vbOKOnly + vbInformation, "Otra vez será"
End If
End Sub
Pero te funcionaría exactamente igual sin necesidad de definir variable
Private Sub Comando27_Click()
If DLookup("frmpacientes", "tblUsuarios", "usuario='" & Me.LblUsuarioActivo.Caption & "'") = -1 Then
DoCmd.OpenForm "formulario1"
Else
MsgBox "No tiene autorizacion para esto", vbOKOnly + vbInformation, "Otra vez será"
End If
End Sub