Visual Basic para Aplicaciones - Mostrar Hojas invisibles en las pestañas de Excel protegidas con VBA

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 7
Ha aumentado su posición en 11 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Mostrar Hojas invisibles en las pestañas de Excel protegidas con VBA

Publicado por ULISES (4 intervenciones) el 08/01/2018 13:06:45
Buenos días Foro, quisiera aprender a desbloquear las hojas que son bloqueadas a través de la aplicación VBA en Excel, para que sean invisibles, ya que se me han olvidado la clave y hay mas de 10 pestañas (hojas ) invisibles.

Ya una vez me lo realizaron por esta misma vía, pero para no estar molestando quisiera aprender a realizarlo.


Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.100
Oro
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Mostrar Hojas invisibles en las pestañas de Excel protegidas con VBA

Publicado por Antoni Masana (374 intervenciones) el 09/01/2018 10:43:21
Aqui te pongo dos MACROS que circulan por este foro y por internet

La primera desprotege el libro y la segunda la hoja activa.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Sub Desproteger_Libro()
    Dim i As Integer, j As Integer, k As Integer, Texto As String, _
        l As Integer, m As Integer, n As Integer, Tecla As Integer
    Texto = "Realmente desea desproteger el libro actual?"
    Tecla = vbCritical + vbYesNo + vbDefaultButton2
     If MsgBox(Texto, Tecla, "DesprotegerLibro") = vbYes Then
       On Error Resume Next
       For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
           For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
               For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
                   For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
                       ActiveWorkbook.Unprotect Chr(i) & Chr(j) & Chr(k) & Chr(l) & _
                                                Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
                                                Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
                       If ActiveWorkbook.ProtectStructure = False And _
                          ActiveWorkbook.ProtectWindows = False Then
                          MsgBox "El libro está ahora desprotegido", _
                                  vbInformation + vbOKOnly, "DesprotegerLibro"
                          Exit Sub
                       End If
                   Next: Next: Next:
               Next: Next: Next
           Next: Next: Next:
       Next: Next: Next
    End If
End Sub

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub Desproteger_Hoja()
    Dim a As Integer, b As Integer, c As Integer,d  As Integer, e As Integer, f As Integer
    Dim a1 As Integer, a2 As Integer, a3 As Integer, a4 As Integer, a5 As Integer, a6 As Integer
    On Error Resume Next
    For a = 65 To 66: For b = 65 To 66: For c = 65 To 66
        For d = 65 To 66: For e = 65 To 66: For a1 = 65 To 66
            For a2 = 65 To 66: For a3 = 65 To 66: For a4 = 65 To 66
                For a5 = 65 To 66: For a6 = 65 To 66: For f = 32 To 126
                    Contraseña = Chr(a) & Chr(b) & Chr(c) & Chr(d) & Chr(e) & Chr(a1) & _
                                 Chr(a2) & Chr(a3) & Chr(a4) & Chr(a5) & Chr(a6) & Chr(f)
                     ActiveSheet.Unprotect Contraseña
                     If ActiveSheet.ProtectContents = False Then
                       MsgBox "¡Enorabuena!" & vbCr & "Se ha quitado la contraseña:" & vbCr & Contraseña
                       Exit Sub
                    End If
                Next: Next: Next
            Next: Next: Next
        Next: Next: Next
    Next: Next: Next
End Sub

Cuando la protección del libro es al abrirlo, esta a otro nivel y no se puede desproteger con macros, ya que el fichero es un comprimido del tipo ZIP.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 7
Ha aumentado su posición en 11 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Mostrar Hojas invisibles en las pestañas de Excel protegidas con VBA

Publicado por ULISES (4 intervenciones) el 09/01/2018 13:38:58
Buenos días y muchas gracias por tu ayuda, lo probare y luego te escribo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 7
Ha aumentado su posición en 11 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Mostrar Hojas invisibles en las pestañas de Excel protegidas con VBA

Publicado por ULISES (4 intervenciones) el 09/01/2018 14:09:13
Antonio probado y 100% efectivo, muchas gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar