Macro con usuarios y contraseñas

Tengo un libro de excel, al que quiero hacerle que al abrirlo aparezca un formulario en el cual uno seleccione un nombre de usuario y tenga que escribir la contraseña debajo para poder abrir este libro, ¿alguien me podrá ayudar?
Respuesta

He probado los códigos que dejaste en tu respuesta, en el caso del código asociado a botón de comando, llamado cancelar, que se encuentra dentro del formulario(Userform1), el código por su parte se ejecuta de forma exitosa. Sin embargo, el código asociado al botón de comando, llamado aceptar, me sale un error que me indica que en la siguiente línea user = Usuario. Value, el user= vacío, ya coloque las respectivas contraseñas de cada usuario ubicadas en la hoja userpass, específicamente en el rango (C2:C6), así como también los nombres correspondientes a los usuarios ubicados en el rango(B2:B6). Pero al querer ejecutar los códigos asociados al botón aceptar, me sale error antes mencionado, ¿sabes a que se debe?

2 respuestas más de otros expertos

Respuesta
1
¿Sabes hacer el formulario? O solo necesitas el código de VBA.
Aclarame esto.
>Un saludo
>Julio
Hola gracias por tu respuesta, osea se armar el formulario, pero no se como programar todo, me gustaría que los nombres de usuarios y contraseñas estén en una hoja oculta de excel, ya que así es más fácil la administración.
Gracias por tu ayuda
El formulario tiene un TextBox para el usuario y otro para la contraseña, un botón de aceptar y otro de cancelar y las instrucciones son estas:
Private Sub ACEPTAR_Click()
 user = USUARIO.Value
Sheets("UserPass").Visible = True
Sheets("UserPass").Select
Range("B2:B6").Select
On Error Resume Next
 Set u = Selection.Find(What:=user)
    'Selection.FindNext(After:=ActiveCell).Activate
If u Is Nothing Then
MsgBox "Usuario Incorrecto", vbInformation, "System"
Application.Quit
Application.DisplayAlerts = False
Exit Sub
End If
pass = CONTRASEÑA.Value
Range("C2:C6").Select
On Error Resume Next
Set c = Selection.Find(What:=pass)
    'Selection.FindNext(After:=ActiveCell).Activate
If c Is Nothing Then
MsgBox "Contraseña Incorrecta", vbInformation, "System"
Application.Quit
Application.DisplayAlerts = False
Else
Sheets("UserPass").Protect = "todoexpertos"
Sheets("UserPass").Visible = xlSheetVeryHidden
Sheets("INICIO").Visible = xlSheetVeryHidden
Userform1.Hide
Application.Visible = True
End If
End Sub
Private Sub CANCELAR_Click()
Application.Quit
End Sub
Si no se habilitan las macros solo verá una hoja que he llamado INICIO en la hay un mensaje de que si no se habilitan las macros no podrá utilizar este libro la hoja esta protegida con contraseña y el proyecto de VBA también (la contraseña como veras es "todoexpertos") así no puede ver el código, la hoja donde están las contraseña la he llamado "UserPass" y esta oculta y las contraseñas están en el rango C2:C6 y el nombre de usuario están en el rango B2:B6 al arrancar el libro si habilitan las contraseñas solo verán el formulario de forma flotante sin la aplicación de Excel visible, Si introducen el usuario y contraseña válidos se cierra el userform y se muestra el libro con las otras hojas que tengas serán visibles y la de inicio y la de las contraseñas estarán ocultas sin posibilidad de mostrarlas, para el usuario no habrá más páginas. Vaya trabajito fino que te he regalado, jajajaja.
Puntúa y finaliza la consulta.
>Un saludo
>Julio
Respuesta

Acabo de usar tu código según dijiste y EXCELENTE...

Te felicito.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas