Crear Usuario Administrador y usuario de consulta a UserForm

Tengo un UseForm, al cual deseo asignarle usuarios de ingreso al formulario de consulta, un Administrador que pueda modificar la base de datos y otro usuario que solo pueda hacer consultas en el formulario.

Respuesta
1

No puedo responderte mientras tenga una consulta abierta aún... sin valorar.

Completa el trámite anterior y con mucho gusto te acercaré el código para permisos.

Considera que tenemos diferentes horarios y disponibilidad de tiempos ;(

¡Gracias!  Quedo pendiente a Tu colaboración, Buen día.

Para poder realizar un control de ingresos, primero habría que tener una lista de usuarios-claves y sus permisos. Esto lo podrás registrar manualmente en alguna hoja o contar con un formulario de registro similar al de la imagen donde irás guardando sus permisos.

Luego se necesita el formulario de ingreso (no se si ya lo tendrás). Lo clásico es algo así. Y al evaluar si usuario-contraseña coinciden con los de la lista, guardarás en estado en una variable pública (ver macro más abajo).

Y por último, al llamar a algún formulario de tareas, por ejemplo una consulta, ya sabrás cuál es el usuario y si tiene permisos o no para esa tarea.

Por ej, en la macro se evalúa si status = C o sea el permiso para el UF de consulta. Donde status será el permiso que se guardó en una variable pública una vez que ingresó con el formulario anterior .

Public status
Sub llamaUF_Base()
'ver si es un usuario autorizado
If status <> "C" Then
    MsgBox "No tienes permisos para esta opción.", , "Información"
    Exit Sub
Else
    UF_Consulta.Show
End If
End Sub

Hay muchas maneras de resolver este tema .... lo ideal es que dejes una imagen de tu formulario.

Otra propuesta: Si no haces control de ingreso podrías solamente, al momento de llamar a una tarea, pedirle una clave (tendrás en una hoja la lista de tareas+clave).

Por ej, como en este otro modelo (extraído de mi Manual de Formularios):

Cambia lo nombres de las tareas (Consulta, Registro, etc).

Y la macro para el botón Aceptar será similar a esto:

Private Sub cmdAceptar_Click()
If txtPassword.Value = "" Then
    MsgBox "Introduce contraseña.", vbExclamation, "Atención"
    txtPassword.SetFocus
End If
'se busca en una lista de claves+permisos
Set hol = Sheets("Listas")
Set busco = hol.Range("R:R").Find(txtPassword.Value, LookIn:=xlValues, lookat:=xlWhole)
If busco Is Nothing Then
    MsgBox "Clave incorrecta", vbExclamation, "Atención"
    txtPassword.SetFocus
Else
    UF_Consulta.Show
    Unload Me
End If
End Sub

Puedes hacer una combinación de ambas propuestas ;)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas