Cách phá mật khẩu protect sheet trong excel (unprotect sheet without password)

0
10029

Sau khi vất vả hơn 1 giờ với cái file excel bị khóa mã của thằng bạn gửi qua nhờ chỉnh sửa giúp (chắc nó thử tài mình T.T) nên mình chia sẽ cách mở khóa mật khẩu protect sheet trong excel 1 cách đơn giản. Các bạn chỉ cần làm theo vài thao tác là có thể chỉnh sửa thoải mái.

Cách nhận biết excel đã bị khóa mã:

Khi bạn muốn chỉnh sửa excel thì xuất hiện đoạn báo lỗi sau: “you cannot use the command on a protected sheet. To use this comnad, you must first unprotect the sheet (review tab, chang gruop, unprotect sheet button). You may be prompted for a password.” Xem ở hình dưới.

cach-pha-mat-khau-protect-sheet-trong-excel

Chúng ta tiến hành unprotect với 8 bước như sau:
Những ứng dụng cần có:

  • Có Microsoft Office.
  • Có cài VBA (Microsoft visual basic), nếu các bạn không biết nó là gì, hãy thử vào excel, xong ấn Alt+F11, nếu nó mở ra cửa sổ Microsoft Visual Basic (hình dưới) tức đã cài VBA, nếu nó không ra thì hãy chạy lại bộ cài MS Office, chọn update, xong tìm trong nhóm cuối cùng của các gói cài đặt sẽ thấy nó.

Microsoft-visual-basic-unprotect-sheet-without-password

Sau khi đã chuẩn bị những ứng dụng chúng ta làm tiếp theo thực hiện các bước sau:

Bước 1: Mở file excel cần mở khoá lên

Bước 2: Ấn Alt+F11 để mở VBA

Bước 3: Ấn F7 để mở cửa sổ soạn thảo mã nguồn

Bước 4: Dán đoạn code bên dưới cuối bài vào cửa sổ vừa mở ra đó

cach-pha-mat-khau-protect-sheet-trong-excel-don-gian

Bước 5: Ấn F5, hoặc vào menu Run\Run Sub/User form để chạy đoạn mã này

Nếu ấn F5 mà nó yêu cầu lựa chọn Macroname thì chọn SheetXXX.unprotectedAll rồi click Run nó sẽ chạy

Chờ từ một đến vài phút (tuỳ tốc độ CPU từng máy tính) sẽ có thông báo sheet đã được unprotect. Mỗi khi một sheet được unprotected thành công, bạn sẽ nhận được thông báo, nhớ nhấn Ok để nó unprotect sheet tiếp theo nhé. Nếu không muốn nhận được thông báo này, bạn chỉ cần xoá 3 dòng mã từ dòng 50 đến dòng 54 là xong.

Sub unprotectedAll()
    Dim i As Integer
 
    For i = 1 To Application.Sheets.Count
        PasswordBreaker Application.Sheets(i)
    Next
 
End Sub
 
Sub PasswordBreaker(MySheet)
  
    Dim pass As String
  
    If MySheet.ProtectContents = False Then
      
        MsgBox "Sheet '" & MySheet.Name & "' is unprotected!", vbInformation
      
    Else
      
        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
      
            pass = Chr(i) & Chr(j) & Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
      
              
      
            MySheet.Unprotect pass
      
        Next: Next: Next: Next: Next: Next
      
        Next: Next: Next: Next: Next: Next
      
        If MySheet.ProtectContents = False Then
      
            MsgBox "Sheet '" & MySheet.Name & "' is unprotected!", vbInformation
      
        End If
      
    End If
  
End Sub

Vậy là chúng ta đã thưc hiện xong các thao tác phá mật khẩu cho sheet trong excel. Chúc các bạn may mắn, mọi chi tiết thắc mắc cho thể gửi email cho mình: tuvandichvuseo@gmail.com mình sẽ giải đáp cho tất cả.

 

BÌNH LUẬN

Please enter your comment!
Please enter your name here