Ocultar/Mostrar pestaña con VBA usando contraseña

Resuelto
caillasse147 Mensajes publicados 71 Estado Miembro -  
caillasse147 Mensajes publicados 71 Estado Miembro -
Hola a todos,

Gracias de antemano por tomar un poco de tiempo para ayudarme a resolver mi problema.

De hecho, tengo una macro disponible y funciona perfectamente, hasta ahí todo bien, sin embargo, he puesto un botón para que al pulsarlo pueda mostrar/ocultar mis pestañas y para ello, escribiendo la contraseña correcta. Ya tengo el comienzo de mi macro a continuación, pero no encuentro cómo hacer que funcione:

Sub macro()
Password = InputBox("¿Contraseña?", "Verificación de usuario")
If Password = "cybo2016!" Then

If Password <> "cybo2016!" Then
MsgBox "¡Gracias por proporcionar la contraseña correcta!"
End If
End Sub

Gracias

3 respuestas

  1. NaXiLeAn Mensajes publicados 122 Estado Miembro 1
     
    Hola,
    - respuesta de "GREG" :
    Hola, he encontrado 2 trucos interesantes para pedir una contraseña al abrir una hoja.

    1ra posibilidad : escondo mi hoja

    a escribir en el módulo de la hoja
    '-----------------------------------------------------
    Private Sub Worksheet_Activate()
    MOSTRAR_TDB_ASSO
    End Sub

    a escribir en el módulo clásico
    '------------------------------------------------------
    Sub MOSTRAR_TDB_ASSO()
    Dim REP As String
    REP = InputBox("CONTRASEÑA", "APERTURA HOJA RECAP ASSO")
    If REP = "YOURPASSWORD" Then
    Worksheets("TDB_ASSO").Visible = True
    Columns("A:XFD").EntireColumn.Hidden = False
    ActiveSheet.Cells(1, 1).Select
    End If
    '------------------------------------------------------
    End Sub
    Sub OCULTAR_TDB_ASSO()
    Columns("A:XFD").EntireColumn.Hidden = True
    Worksheets("TDB_ASSO").Visible = False
    End Sub

    2da posibilidad : solo lo hago cuando activo la hoja (pero en mi opinión, eso se volverá muy difícil si se trabaja regularmente con varias hojas, incluida esta...)

    a escribir en el módulo de la hoja
    '-----------------------------------------------------
    Private Sub Worksheet_Activate()
    Dim REP As String
    Columns("A:XFD").EntireColumn.Hidden = True
    REP = InputBox("CONTRASEÑA", "APERTURA HOJA RECAP ASSO")
    If REP = "YOURPASSWORD" Then
    Columns("A:XFD").EntireColumn.Hidden = False
    ActiveSheet.Cells(1, 1).Select
    End If
    End Sub

    POR SUPUESTO, ESTOS CÓDIGOS SON A ADAPTAR A TU HOJA ;)

    ¡Hasta luego! ;)

    --
    NaXiLeAn_2.0
    3