Mam skoroszyt programu Excel.
Dwa lata przed ustawieniem opcji ochrony hasłem dla jednego z arkuszy. Teraz zapomniałem hasła. Czy istnieje sposób na odzyskanie hasła do tego arkusza programu Excel?
Mam skoroszyt programu Excel.
Dwa lata przed ustawieniem opcji ochrony hasłem dla jednego z arkuszy. Teraz zapomniałem hasła. Czy istnieje sposób na odzyskanie hasła do tego arkusza programu Excel?
Nie możesz odzyskać hasła, ale możesz odblokować arkusz (skrót używany do ochrony arkusza jest dość podatny na kolizje w starych wersjach programu Excel, więc generowanie kolizji jest tutaj dość szybkie).
Dostępne są skrypty, które brutalnie wymuszą otwarcie twojego arkusza w bardzo krótkim czasie.
Spójrz tutaj na przykład: http://www.theofficeexperts.com/VBASamples/Excel02.htm
Oto kod:
Sub PasswordBreaker()
'Author unknown but submitted by brettdj of www.experts-exchange.com
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 "One usable password is " & Chr(i) & Chr(j) & _
Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
ActiveWorkbook.Sheets(1).Select
Range("a1").FormulaR1C1 = 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