jueves, 27 de octubre de 2011

Desproteger hoja excel sin tener la contraseña. (Solucionado)

Para ello, el código que pondré a continuación hay que ponerlo en un módulo de visual basic de la aplicación Excel. Lo puedes encontrar en el menú de Excel "Herramientas / Macro / Editor de Visual Basic" o bien pulsando (ALT+F11) para abrir el editor, pegamos el código, cerramos el editor.
Ahora seleccionamos la hoja que queremos desproteger y ejecutamos la macro "breakit" (ALT+F8 para seleccionarla). Tras la ejecución, un mensaje dará una contraseña equivalente, y la hoja ya estará desprotegida.
Sub breakit()
   Dim i As Integer, j As Integer, k As Integer
   Dim l As Integer, m As Integer, n As Integer
   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
   ActiveSheet.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 ActiveSheet.ProtectContents = False Then
              MsgBox "Un password valido es " & Chr(i) & Chr(j) & _
                         Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) _
                         & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
              Exit Sub
   End If
                                      Next
                                     Next
                                    Next
                                   Next
                           Next
                          Next
                         Next
                        Next
               Next
              Next
             Next
            Next
End Sub

1 comentario:

  1. ELIMINAR CONTRASEÑAS DE EXCEL.

    Seguramente os habréis encontrado con archivos de Excel que están protegidos por contraseña y por lo tanto no hay manera de modificarlos y adaptarlos a vuestras necesidades, porque el autor (generalmente obrando de buena fé para intentar evitar problemas de gestión) a bloqueado el mismo con contraseña.
    Existen programas de Windows que os eliminarán esa clave o que os desprotegerán el documento, pero no todos funcionan en su versión freeware, share…… por lo que el mejor método es el siguiente (PROBADO Y FUNCIONANDO EN WINDOWS con el PAQUETE OFFICE)
    1.- ABRES EL LIBRO DE EXCEL
    2.- UNA VEZ TIENES EL LIBRO EN PANTALLA PULSAS LA TECLA ‘ALT’ Y ‘F11’ PARA ABRIR UNA VENTANA DE VISUAL (Microsoft Visual Basic)
    3.- AHORA VAS AL MENÚ SUPERIOR Y ELIGES ‘INSERTAR’, ‘MODULO’ Y AHÍ PEGAS TODO EL CÓDIGO QUE TE PONGO A CONTINUACIÓN:
    Sub jd()
    Dim a As Integer, b As Integer, c As Integer
    Dim d As Integer, e As Integer, f As Integer
    Dim a1 As Integer, a2 As Integer, a3 As Integer
    Dim 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 "¡JD TE DA TU CONTRASEÑA!" & vbCr & "La contraseña es:" & vbCr & Contraseña
    Exit Sub
    End If
    Next: Next: Next: Next: Next: Next
    Next: Next: Next: Next: Next: Next
    End Sub

    4.- EN ESA VENTANA DE VISUAL, VAS AL MENU ‘ARCHIVO’, ‘ EXPORTAR ARCHIVO’ Y LO GUARDAS POR EJEMPLO EN EL ESCRITORIO, CON EL NOMBRE QUE PONE POR DEFECTO “MODULO 1.BAS”
    5.- AHORA QUE YA TIENES ESE MÓDULO, CIERRAS TODAS LA VENTANAS QUE TENGAS ABIERTAS POR EL ESCRITORIO Y VAS A EJECUTAR TU HOJA DE EXCEL QUE ESTÁ PROTEGIDA, Y UNA VEZ LA TIENES ABIERTA PRESIONAS ‘ALT’ +F11 COMO HAS HECHO ANTES Y TE APARECERA LA VENTANITA DE VISUAL NUEVAMENTE Y AHORA EN EL MENU SELECCIONAS ‘ARCHIVO’ ‘IMPORTAR’ E IMPORTAS EL MODULO QUE HABIAS CREADO EN EL PASO ANTERIOR
    6.- AHORA CIERRAS ESA VENTANIDA DEL VISUAL Y TE QUEDARA EN PANTALLA LA HOJA DE EXCEL QUE AUN ESTA PROTEGIDA, PERO PULSA ‘ALT’ + ‘F8’ Y SELECCIONA EL ARCHIVO ‘JD’ Y LA OPCIÓN ‘EJECUTAR’…. DÉJALO PENSAR UN RATO Y TE DARA LA CONTRASEÑA DEL ARCHIVO EXCEL.


    USARLO CON PRUDENCIA Y SABIENDO LO QUE ESTAIS HACIENDO, PORQUE NORMALMENTE SI PROTEGEN UN ARCHIVO LO HACEN PARA QUE NO LA FASTIDIEMOS ;)


    UN SALUDO

    ResponderEliminar