Existira alguna macro que oculte las hojas de excel y las muestre poniendo usuario y contraseña

Hola con todos los integrantes de esta gran comunidad, desde ya las gracias por atender mi solicitud.
Bueno si no es abusar de su confianza les comento que he buscado por la red antes de incomodarlos y los ejemplos que logrado encontrar digamos que no hacen lo que necesito y lo que necesito es un código o macro que me permita ocultar automáticamente las hojas del libro con el cual trabajo (20 hojas), y que cuando abra el libro se muestren estas hojas, pero antes de mostrarlas me pida una contraseña y usuario si fuera posible o simplemente que pida contraseña, si es correcta que abra la hoja y si no que se cierre el libro automáticamente .

1 respuesta

Respuesta
1

Entrá al Editor de macros, seleccioná con doble clic el objeto ThisWorkbook (o Este Libro) y allí pegá estas rutinas:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call ocultando
End Sub
Private Sub Workbook_Open()
Call mostrando
End Sub

Nota: también debieras ejecutar 'ocultando' en el evento BeforeSave por las dudas.

Ahora insertá un módulo, y allí copiá estas otras. La idea es que solo se quedará visible la hoja que generalmente es la de un menú o la que indiques en el nombre que en mi ejemplo dice 'Menu':

Sub ocultando()
'x Elsamatilde
'oculta todas las hojas menos la activa
For Each Sh In ActiveWorkbook.Sheets
If Sh.Name <> "Menu" Then
    Sh.Visible = xlVeryHidden
End If
Next Sh
End Sub
Sub mostrando()
'x Elsamatilde
'se solicita clave
pass = InputBox("Ingrese contraseña")
If pass <> "marce" Then
    ActiveWorkbook.Close False
    Application.Quit
Else
    'muestra las hojas
    For Each Sh In ActiveWorkbook.Sheets
    If Sh.Name <> "Menu" Then
        Sh.Visible = True
    End If
    Next Sh
End If
End Sub

Sdos. Si esto responde a lo solicitado no olvides valorar y finalizar. 

Desde ya muchísimas  gracias por tu respuesta y tu tiempo  y disculpa la insistencia  pero me quedan  unas cuantas dudas  las cuales por favor si pudieras  aclarar.

+ primero el código que me diste  muy bueno pero al momento de colocar la contraseña se ve la palabra que se escribe  entonces no se si podría  ocultarse en asteriscos  cosa que sea un poco mas difícil de que la sepan.

+ De ser posible  podría  colocarse le un userform en lugar del imputbox (para que cuando la contraseña asignada  este mal salga un mensaje de error

+Se puede ejecutar  mas de una macro en un solo libro de ser  posible por favor  podría darme una pequeña guía como hacerlo

desde ya muchas gracias

Bien, te aclaro:

Con un inputbox no podés ocultar los caracteres pero si podés enviar un mensaje si la clave está mal y hacer otras cosas como x ej darle la posibilidad de reintentarlo.

El código que te pasé es lo básico y a partir de allí podés ir agregando otras opciones.

Para mostrar * o algún otro caracter será necesario entonces pasar a un UF con un textbox que permita esa opción. Y también x supuesto enviar algún mensaje.

Entonces para continuar con este tema comentame qué otras acciones deben sucederse luego del mensaje de error (reintentar. Quedarse en la hoja, cerrar el libro, etc)

Con respecto a lo de ejecutar más de una macro en 1 solo libro... obviamente que se puede, pero en una nueva consulta por favor ampliá un poco el tema... qué tipo de macro, para qué tareas, algo como para tener una idea. Y no olvides indicar tu versión Excel que según el contenido de las macros pueden variar algunas instrucciones.

PD) Podés descargar mi manual de Programación Inicial 2003 como para empezar a interiorizarte en el tema. Es gratis !

Sdos

Elsa

Entonces para continuar con este tema comentame qué otras acciones deben sucederse luego del mensaje de error (reintentar. quedarse en la hoja, cerrar el libro, etc)

Bueno reiterar mi agradecimiento  la versión de excel que uso es la 2010: 

* Si fuera posible asignarle un usuario y contraseña 

* bueno seria interesante que al poner la contraseña no se  vea el texto  y que si es posible de dos oportunidades para poner la contraseña y si fuera errónea la contraseña  salga un mensaje algo como inténtelo de nuevo,  luego del segundo intento el libro se cierre automáticamente.

saludos muchas gracias 

Tendré que desarrollarte un pequeño Userform en ese caso. Solicitamelo al correo que aparece en mi sitio que dejo al pie o dejame un correo tuyo aquí.

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas