Todd đã phát triển một sổ làm việc được những người khác sử dụng. Để ngăn dữ liệu bị hủy hoại, anh ấy đã bảo vệ trang tính cũng như sổ làm việc. Vấn đề là Todd đôi khi quên bảo vệ trang tính và sổ làm việc sau khi thực hiện các thay đổi. Anh ấy đang tự hỏi liệu có cách nào để tạo một chỉ báo trực quan cho biết trang tính / sổ làm việc hiện được bảo vệ hay không được bảo vệ.

Tất nhiên, cách dễ nhất để kiểm tra xem có thứ gì đó không được bảo vệ hay không là bắt đầu xem các lựa chọn menu có sẵn. Nếu có đầy đủ các lựa chọn, thì trang tính và sổ làm việc không được bảo vệ. Nếu có các bộ phận quan trọng không khả dụng (“chuyển sang màu xám”), thì tính năng bảo vệ được bật.

Một giải pháp dễ dàng khác là tạo một hàm do người dùng định nghĩa trả về một giá trị cho biết liệu sổ làm việc hoặc trang tính có được bảo vệ hay không. Sau đây sẽ thực hiện thủ thuật:

Function WksProtected(rng As Range) As String     Application.Volatile     If rng.Parent.ProtectContents Then         WksProtected = "Protected"

Else         WksProtected = "Not Protected"

End If End Function
Function WkbProtected(rng As Range) As String     Application.Volatile     If rng.Parent.Parent.ProtectStructure Then         WkbProtected = "Protected"

Else         WkbProtected = "Not Protected"

End If End Function

Để sử dụng macro, chỉ cần đưa các công thức như sau vào bất kỳ đâu trong trang tính:

=WksProtected(A1)

=WkbProtected(A1)

Kết quả của các công thức là “Được bảo vệ” hoặc “Không được Bảo vệ”,

tùy thuộc vào trạng thái của trang tính và sổ làm việc. Bạn có thể sử dụng định dạng có điều kiện để đánh dấu các ô dựa trên những gì được trả về bởi các hàm.

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (3172) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: