Larry đã viết về một vấn đề mà anh ấy gặp phải khi bảo vệ một trang tính mà anh ấy đã phát triển. Anh ta có các ô chứa cả công thức và định dạng có điều kiện. Anh ta có thể bảo vệ cả hai trong một trang tính, nhưng nếu ai đó chọn một ô và sao chép nó sang một trang tính khác, thì định dạng có điều kiện sẽ hiển thị.

Khi bạn sao chép một ô được bảo vệ từ trang tính này sang trang tính khác, nếu công thức trong ô nguồn bị ẩn trong quá trình bảo vệ, thì kết quả của công thức sẽ được dán, không được bảo vệ, vào các ô đích. Đây có lẽ không phải là vấn đề lớn, vì bạn muốn các công thức — không phải kết quả — được bảo vệ.

Tuy nhiên, Excel không bảo vệ các định dạng có điều kiện. Các định dạng có điều kiện của các ô mà bạn dán, vì chúng nằm trong một trang tính không được bảo vệ, nên có thể được xem và sửa đổi, như mong muốn. Đây có thể là một vấn đề nếu các định dạng có điều kiện chứa các công thức mà bạn cũng muốn giữ riêng tư.

Cách duy nhất để giải quyết vấn đề này là vô hiệu hóa khả năng sao chép bất kỳ thứ gì từ trang tính được bảo vệ của bạn. Bạn thực hiện việc này thông qua việc sử dụng macro, được thêm vào đối tượng trang tính, điều này sẽ vô hiệu hóa việc sao chép.

Private Sub Worksheet_Deactivate()

Application.CutCopyMode = False End Sub

Macro này hoạt động vì bất kỳ lúc nào trang tính bị hủy kích hoạt (nghĩa là, trang tính mục tiêu được chọn), thì CutCopyMode được đặt thành Sai.

Điều này dẫn đến “kiến diễu hành” xuất hiện xung quanh các ô nguồn khi người dùng nhấn Ctrl + C sẽ bị xóa và do đó không thể dán được nữa. Sao chép và dán trên cùng một trang tính vẫn tốt; chỉ không đến một trang tính khác (không được bảo vệ).

_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 (3301) á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: