A quien no le ha pasado que requiere de una información a trabajar, la consigue en una base de datos de Excel y esta viene protegida para hacer cambios.
En ese casó no faltará el monje shaolin que intentará traspasar los datos uno a uno a una nueva base de datos, pero en algunos casos eso es simplemente imposible.
Es por ello que buscando una solución llegue al desarrollo de un pequeño algoritmo, programilla que se puede incrustar dentro de la página de Excel como un Macro, de manera de ejecutarlo y de esa forma conseguir, no la clave original del texto sino una alternativa valida para poder hacer los cambios.
Este método, sencillo, lo he utilizado y funciona bien, por lo que me atrevo a recomendar estas instrucciones desarrolladas por David Suárez, como un manual a prueba de idiotas.
- Abra su hoja de Excel.
- Abra el Editor de Visual Basic en los macros. ( Menú de Excel "Herramientas / Macro / Editor de Visual Basic" o bien pulsando (ALT+F11))
- Copie el código de programación y péguelo en el editor de visual Basic y luego ciérrelo.
- 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.”
Espero que les sirva y funcione.
Código de programación
Visual Basic:
- 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
4 comentarios:
Excelente aporte, funcionó correctamente!
Muchas gracias!
Excelente aporte, funcionó correctamente!
Muchas gracias!
Excelente aporte, funcionó correctamente!
Muchas gracias!
no hay de que.. :)
Publicar un comentario