En alguna ocasión te habrás encontrado en la situación de recibir un archivo de Excel que tiene alguna hoja protegida con una macro que te impide modificar ciertos campos que consideras necesarios.
Cuando accedes al menú Revisar --> Desproteger hoja, si la hoja tiene una contraseña para ser desbloqueada, te aparecerá la siguiente imagen.
Abrir editor de Visual Basic
Para desbloquear o desproteger una hoja de Excel con una macro, lo más sencillo es abrir el editor de VBA y copiar el siguiente código.
Sub DesbloquearHojaExcel()
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
Dim i1 As Integer, i2 As Integer, i3 As Integer
Dim i4 As Integer, i5 As Integer, i6 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 "Una posible contraseña 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
Al ejecutar la macro, habrás eliminado la contraseña de la hoja de Excel y se obtendrá el siguiente
mensaje:
Pinchar en aceptar y la hoja estará totalmente
desprotegida. Ahora sí, podrás hacer los cambios y modificaciones que quieras, sin ningún tipo de restricción.
Advertencia
Esta macro sólo sirve para desproteger una hoja de Excel, igual lo que necesitas es desproteger un libro de Excel.
No hay comentarios:
Publicar un comentario