This VBA code attempts to break the password protection on a worksheet by systematically trying all possible 6 character combinations of letters and numbers as the password. It uses nested For loops to iterate through all characters from ASCII codes 65 to 66 (A to Z) and 32 to 126 (space to ~) for each of the 6 password positions. If the Unprotect method succeeds without an error, the password that worked is displayed in a message box.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
119 views1 page
Password Breaker Macro
This VBA code attempts to break the password protection on a worksheet by systematically trying all possible 6 character combinations of letters and numbers as the password. It uses nested For loops to iterate through all characters from ASCII codes 65 to 66 (A to Z) and 32 to 126 (space to ~) for each of the 6 password positions. If the Unprotect method succeeds without an error, the password that worked is displayed in a message box.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 1
Sub PasswordBreaker()
'Breaks worksheet password protection.
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) Exit Sub End If Next: Next: Next: Next: Next: Next Next: Next: Next: Next: Next: Next End Sub