____________________________________________
Sub KhoaMoTatCaSheet()
Dim ws As Worksheet
Dim MatKhau As String
Dim DangKhoa As Boolean
MatKhau = "123456"
'Kiểm tra sheet hiện tại đang khóa hay chưa
DangKhoa = ActiveSheet.ProtectContents
Application.ScreenUpdating = False
If DangKhoa = True Then
'Đang khóa -> mở khóa tất cả sheet
For Each ws In ActiveWorkbook.Worksheets
ws.Unprotect Password:=MatKhau
Next ws
MsgBox "Đã MỞ KHÓA tất cả " & ActiveWorkbook.Worksheets.Count & " sheet.", _
vbInformation, "Mở khóa"
Else
'Đang mở -> khóa tất cả sheet
For Each ws In ActiveWorkbook.Worksheets
ws.Protect _
Password:=MatKhau, _
AllowFiltering:=True, _
AllowUsingPivotTables:=True
Next ws
MsgBox "Đã KHÓA tất cả " & ActiveWorkbook.Worksheets.Count & " sheet." & vbCrLf & _
"Vẫn sử dụng được Bộ lọc và PivotTable.", _
vbInformation, "Khóa"
End If
Application.ScreenUpdating = True
End Sub
_______________________________________________
Sau đó có thể nhấn Alt + F11 để quay lại Excel. tắt Excel và Save
Cách gán phím tắt
Trong Excel:
1. Nhấn Alt + F8 để mở danh sách Macro.
2. Chọn macro:
PERSONAL.XLSB!KhoaTatCaSheet
3. Bấm Options... / Tùy chọn...
Các bước thực hiện thêm Macro mới
Bước 1 — Tạo PERSONAL.XLSB
Trong Excel 2024:
Xem (View) → Macro → Ghi Macro (Record Macro).
Ở mục Lưu macro trong / Store macro in, chọn:
Personal Macro Workbook / Sổ làm việc Macro Cá nhân
Đặt tên bất kỳ, ví dụ TaoPersonal → OK → sau đó bấm Dừng ghi (Stop Recording).
Excel sẽ tự tạo file PERSONAL.XLSB.
Bước 2 — Mở VBA
Nhấn:
Alt + F11
Sau đó nhìn bên trái, bạn sẽ thấy:
VBAProject (PERSONAL.XLSB)
Chọn:
PERSONAL.XLSB → Insert → Module
Bước 3 — Dán macro này
Tôi khuyên dùng phiên bản dưới đây thay vì macro trước, vì nó tác động vào file Excel đang mở/đang chọn, chứ không khóa PERSONAL.XLSB. ( dán Macro phía trên cùng vào)
Bạn đổi:
123456
thành mật khẩu bạn muốn.
Bước 4 — Lưu PERSONAL.XLSB
Nhấn Ctrl + S.
Sau đó đóng Excel. Nếu Excel hỏi có muốn lưu thay đổi đối với Personal Macro Workbook thì chọn Save/Lưu.
Bước 5 — Đưa 2 nút lên thanh công cụ
Mở lại Excel.
Vào:
Tệp → Tùy chọn → Thanh công cụ Truy nhập Nhanh
Ở Chọn lệnh từ, chọn:
Macro
Bạn sẽ thấy:
PERSONAL.XLSB!KhoaTatCaSheet PERSONAL.XLSB!MoKhoaTatCaSheet
Thêm cả hai sang bên phải.
Bạn có thể chọn Sửa đổi/Modify để đổi biểu tượng cho dễ nhận biết.
Sau này thao tác chỉ còn:
Mở file Excel → bấm nút Khóa → xong.
Khi cần sửa dữ liệu:
Bấm nút Mở khóa → xong.
Bản không phụ thuộc vào sheet bạn đang đứng. Macro sẽ tự kiểm tra toàn bộ workbook:
- Nếu còn ít nhất 1 sheet chưa khóa → hiểu là bạn muốn KHÓA → chỉ khóa các sheet chưa khóa.
- Nếu tất cả sheet đều đang khóa → hiểu là bạn muốn MỞ → chỉ mở những sheet có đúng mật khẩu của macro.
- Sheet khóa bằng mật khẩu khác → giữ nguyên.
- Khi khóa vẫn cho phép Bộ lọc tự động và PivotTable/PivotChart.
- Chỉ cần 1 macro + 1 phím tắt.
- khi khóa thì ẩn công thức
- __________
