Bienvenido a la mayor comunidad de usuarios EXCEL

Regístrate ahora y podrás: / 💪 Hacer preguntas a los expertos / ⬇️ Descargar ejemplos y plantillas / 🏅 Acceder a contenidos premium

Regístrate gratis

Formulario de Usuario y contraseña para mostrar hoja por usuario

Dandy

Member
Buenos días:

Quisiera que me puedan ayudar con la siguiente macro, la cual adjunto, quisiera que al abrir la macro me aparezca el userform para poder ingresar usuario y contraseña, y que ninguna hoja este visible, en la hoja de usuarios tengo la información de las hojas que deseo que cada usuario pueda visualizar, en esta macro solo puedo colocar una Hoja y si deseo que pueda visualizar 2 o 3, no se como realizarlo, en el caso del administrador el pueda ver todas las hojas y tambien tener el VBAproyect desbloqueado.

Para poder ingresar al excel es el siguiente usuario y contraseña: admin.

De antemano agradezco su apoyo.

Saludos.
 

Adjuntos

  • Formulario de Usuario y contraseña para mostrar hoja por usuario.xlsm
    46,6 KB · Visitas: 3

Dandy

Member
Buenas tardes,

Si haces búsquedas en el foro veras que hay bastantes respuestas que buscan mas o menos lo mismo.
No obstante hay una de ellas que creo que hace lo que indicas.
Échale un vistazo:

Mostrar y Ocultar Hojas según Usuario y Contraseña

La respuesta fue de un miembro del foro Antoni que sabe mucho.

Un saludo.
Buenas días Novirus:

Agradezco en la respuesta a los que estaba buscando, pero hay forma de que al abrir el libro solo tenga abierto el userform para poder seleccionar el usuario y colocar la contraseña, que ninguna hoja este abierto.

Saludos.
 

novirus

Active member
Buenas días Novirus:

Agradezco en la respuesta a los que estaba buscando, pero hay forma de que al abrir el libro solo tenga abierto el userform para poder seleccionar el usuario y colocar la contraseña, que ninguna hoja este abierto.

Saludos.
Buenas,

Creo que es lo primero que hace:
Código:
Private Sub Worksheet_Activate()
    OcultarHojas
End Sub
Y luego sale el Form, por lo menos a mi.
También depende de como tengas habilitado el tema de las macros en tu excel. Es mas importante de lo que parece.
Si lo tienes habilitado o no.

Un saludo.
 

Dandy

Member
Buenas,

Creo que es lo primero que hace:
Código:
Private Sub Worksheet_Activate()
    OcultarHojas
End Sub
Y luego sale el Form, por lo menos a mi.
También depende de como tengas habilitado el tema de las macros en tu excel. Es mas importante de lo que parece.
Si lo tienes habilitado o no.

Un saludo.
Hola Novirus:

Al abrir el archivo me abre la hoja 1, la cual adjunto imagen
1618327566975.png

Y si tengo habilitado la macro
1618327594698.png

O que estoy haciendo mal.

Por favor ayúdame con la macro.

Muchas gracias.
 

Dandy

Member
Buenas tardes:

Su apoyo al seleccionar el usuario y colocar la contraseña, no se porque motivo no me abre los excel si en la hoja2 indica que hojas va abrir.

Pido su apoyo en la soluciona ya que con este archivo es lo que estaba buscando.

usuario1
contraseña c1

Agradeciendo de antemano su apoyo.
 

Adjuntos

  • Login (1).xlsm
    57,8 KB · Visitas: 7

novirus

Active member
Buenas tardes:

Su apoyo al seleccionar el usuario y colocar la contraseña, no se porque motivo no me abre los excel si en la hoja2 indica que hojas va abrir.

Pido su apoyo en la soluciona ya que con este archivo es lo que estaba buscando.

usuario1
contraseña c1

Agradeciendo de antemano su apoyo.
Buenas,

Has adaptado el código de Antoni en tu hoja de excel, pero por lo que veo no lo entiendes, 🤦‍♂️.
Para darte una respuesta rápida debes poner en tu código lo siguiente:
Código:
Private Sub Workbook_Open()
    Application.Visible = False
    For x = 2 To Sheets.Count: Sheets(x).Visible = xlSheetVeryHidden: Next
    Login.Show
End Sub

Básicamente es que él oculta las pestañas antes y luego mas muestra, como eso no lo haces pues .... tu veras.
Por otro lado, ojo con
Código:
Application.Visible = False

Si no lo pones a True en los eventos de "Ingresar", "Cancelar" o la "X", no vas a ver nada.
Pon debajo de cada Unload
Código:
Unload Me
Application.Visible = True


Un saludo.
 

Dandy

Member
Buenas,

Has adaptado el código de Antoni en tu hoja de excel, pero por lo que veo no lo entiendes, 🤦‍♂️.
Para darte una respuesta rápida debes poner en tu código lo siguiente:
Código:
Private Sub Workbook_Open()
    Application.Visible = False
    For x = 2 To Sheets.Count: Sheets(x).Visible = xlSheetVeryHidden: Next
    Login.Show
End Sub

Básicamente es que él oculta las pestañas antes y luego mas muestra, como eso no lo haces pues .... tu veras.
Por otro lado, ojo con
Código:
Application.Visible = False

Si no lo pones a True en los eventos de "Ingresar", "Cancelar" o la "X", no vas a ver nada.
Pon debajo de cada Unload
Código:
Unload Me
Application.Visible = True


Un saludo.
Hola Novirus:

Si adapte la macro de Antonio, pero estoy observando que siempre se debe tener una hoja en Excel hay forma de no tener una hoja visible, que todas estén ocultas cuando al abrir mi libro y que solo este mi userform y cuando ingreso el usuario y la contraseña me visualice las hojas que yo indico por usuario, e tratado de hacer esa parte pero al indicar a todas las hojas que no este visible me sale un error.
1618333770353.png
Espero me puedas despejar la duda.

Gracias
 

Temas similares

Arriba