Khóa và mở khóa (Protect/Unprotect) vùng dữ liệu trong bảng tính excel

Tính năng Protect sheet trong bảng tính excel cho phép bạn bảo vệ, khóa, không cho người khác sửa đổi các ô chứa công thức hay vùng dữ liệu nhạy cảm khá dễ dàng.

Protect sheet bảo vệ bảng tính, chống sửa đổi các ô vùng chọn bằng thiết lập mật khẩu. Tuy nhiên, nếu không may bạn quên mật khẩu, hay bạn cần Unprotect sheet bảng tính khác mà không có mật khẩu thì làm thế nào?

Bài viết sau sẽ trình bày cách khóa một bảng tính, khóa một vùng chọn của bảng tính và cách 'phá pass' Unprotect sheet mà không cần phải dùng phần mềm can thiệp.

Cách bảo vệ bảng tính bằng Protect sheet

Nếu khóa toàn bộ bảng tính trừ vùng chọn: đầu tiên bạn cần chọn (bôi đen) vùng chọn không bị khóa (người dùng khác có thể chỉnh sửa dữ liệu), mở tab Protection trong Format Cells (nhấp phải chuột/Format Cells/Protection):

Khóa và mở khóa (Protect/Unprotect) vùng dữ liệu trong bảng tính excel

Nhấp bỏ chọn dấu stick trong mục Locked, nhấp OK.

Nếu chỉ khóa vùng chọn: Bạn chọn toàn bộ bảng tính (nhấn tổ hợp phím Ctr + A) rồi thao tác các bước như trên.

Kế tiếp, bạn chọn vùng dữ liệu cần khóa, cũng thao thao tác tương tự như trên nhưng chọn lại dấu kiểm Locked trong tab Protection của Format Cells trước khi nhấn OK.

Nếu khóa toàn bộ bảng tính: bạn không cần phải thực hiện các bước trên vì Excel mặc định là Locked.

Tiếp theo, bạn nhấp Tab Review, chọn Protect sheet:

Khóa và mở khóa (Protect/Unprotect) vùng dữ liệu trong bảng tính excel

Menu Protect sheet xuất hiện như sau:

Khóa và mở khóa (Protect/Unprotect) vùng dữ liệu trong bảng tính excel

Trong phần Allow all uers of this worksheet to bạn chọn các tính năng cần khóa, xong nhập mật khẩu vào ô Password to unprotect sheet. Nhấp OK và lập lại mật khẩu lần nữa khi được nhắc.

Lúc này phần chọn của sheet của bạn đã bị khóa, khi nhấp chuột (hoặc nhấn F2) để sửa đổi sẽ không thực hiện được và excel hiện ra một thông báo "xám xịt" về tình trạng của sheet (sheet bị khóa, cần pass để mở).

Mở khóa bảng tính (Unprotect sheet)

Nếu bạn có mật khẩu để mở khóa vùng chọn bị khóa (Unprotect sheet) thì mọi việc quá dễ dàng, chỉ việc thao tác: nhấp Tab Review, chọn Unprotect sheet nhập mật khẩu vào hộp Unprotect sheet khi nó xuất hiện và nhấn OK là xong.

Tuy nhiên, nếu chẳng may bạn quên mật khẩu hoặc cần cập nhật thông tin trên sheet bị khóa của một file excel nào đó mà không pass thì phải xử lý thế nào?

May mắn là chúng ta vẫn có thể xử lý được tình huống này mà không cần phải dùng phần mềm của bên thứ 3 can thiệp, đó là sử dụng Visual Basic Editor.

Các bước thao tác như sau:

Đầu tiên, bạn cần mở file excel bị khóa lên, vào Visual Basic Editor bằng cách nhấn phím tắt ALT + F11. Bạn click chọn vào sheet cần mở khóa:

Khóa và mở khóa (Protect/Unprotect) vùng dữ liệu trong bảng tính excel

(Trong hình trên là flie phantichcongno_mau, sheet2 (tonghop))

Tiếp theo, bạn copy đọan code sau dán vào phần General để phá pass cho sheet cần mở khóa:

Sub PasswordBreaker()
If ActiveSheet.ProtectContents = False Then
    MsgBox "Sheet '" & ActiveSheet.Name & "' is unprotected!", vbInformation
Else
    If MsgBox("Sheet '" & ActiveSheet.Name & "' is protected, do you want to unprotect it?", _
    vbYesNo + vbQuestion, "Unprotect Active Sheet") = vbNo Then Exit Sub
    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)
    Next: Next: Next: Next: Next: Next
    Next: Next: Next: Next: Next: Next
    If ActiveSheet.ProtectContents = False Then MsgBox "Sheet '" & ActiveSheet.Name & "' is unprotected!", vbInformation
End If
End Sub

Truy cập vào menu Run → Run Sub/UserForm (hoặc nhấn F5) để chạy lệnh trên, nhấn Yes:

Khóa và mở khóa (Protect/Unprotect) vùng dữ liệu trong bảng tính excel

Nếu thành công, bạn cần xác nhận lại lệnh trên, nhấn OK để hoàn tất.

Như vậy, pass Protect sheet đã được gở bỏ, bạn hoàn toàn thao tác trên bảng tính này một cách bình thường.

Chúc các bạn thành công.
Ketoan.biz

Bài viết liên quan

Bài mới hơn
« Prev Post
Bài cũ hơn
Next Post »

2 comments

Write comments
Nặc danh
08:38 14/3/24 delete

cám ơn bạn, nhưng khi mình muốn khóa lại thì làm thế nào vậy bạn

Reply
avatar