Khóa và bảo vệ nhữn gô có chứa công thức

Một phần của tài liệu Những tuyệt chiêu hay trong excel (Trang 47 - 54)

công thức

Chiêu này giúp bạn cho phép người khác thay đổi các ơ có chứa dữ liệu,

nhưng cấm họ thay đổi các ơ chứa cơng thức. Bạn cũng có thể bảo vệ các ơ có chứa cơng thức mà không cần phải bảo vệ tồn bộ trang tính của bạn.

Khi tạo một bảng tính, thường chúng ta sẽ phải dùng đến một số công thức, và khi chia sẻ bảng tính cho mọi người, có thể bạn muốn rằng, khơng ai có thể can thiệp (xóa, sửa...) những vào những ơ có chứa cơng thức. Cách dễ nhất là cũng phổ biến nhất là Protect (bảo vệ) bảng tính. Tuy nhiên, Protect bảng tính khơng chỉ ngăn không cho can thiệp vào các ô chứa công thức, mà nó khơng cho can thiệp vào tất cả, nghĩa là khơng ai có thể làm gì bảng tính của bạn. Đôi khi, bạn lại không muốn như vậy, bạn chỉ muốn bảo vệ các ô chứa cơng thức thơi, cịn những ơ chứa dữ liệu thì khơng.

Có ba giải pháp để thực hiện điều này: Khóa những ơ chứa cơng thức, sử dụng chức năng Data-validation cho các ô chứa công thức, và tự động bật tắt chức năng bảo vệ.

Khóa các ơ chứa cơng thức

Theo mặc định, tất cả các ơ trong bảng tính đều được khóa (locked), tuy nhiên, nó chẳng có tác dụng gì trừ phi bạn áp dụng lệnh Protect bảng tính. Đây là cách dễ nhất để áp dụng lệnh Protect cho bảng tính, nhưng chỉ những ơ chứa cơng thức thì mới bị khóa, và được bảo vệ:

Chọn tồn bộ bảng tính, bằng cách nhấn Ctrl+A, hoặc nhấn vào cái ô vuông nằm ở giao điểm của cột A và hàng 1. Rồi nhấn nút phải chuột và chọn Format Cells, rồi trong tab Protection, bỏ đánh dấu ở tùy chọn Locked, rồi nhấn OK:

Mở khóa (Unlock) tồn bộ bảng tính bằng cách bỏ tùy chọn Locked

Sau đó, bạn chọn đại một ơ nào đó, chọn Home ➝ Find & Select ➝ Go To

Special [E2003: Edit | Go To… | Special]; hoặc nhấn Ctrl+G hay F5 rồi nhấn vào

Dùng hộp thoại Go To Special để chọn các ơ có chứa cơng thức

Trong hộp thoại đó, bạn nhấn vào tùy chọn Formulas, và nếu cần thiết thì chọn hoặc khơng chọn thêm 4 ơ nhỏ ở dưới (liệt kê các loại cơng thức, mặc định thì cả 4 ơ này đều được chọn), và nhấn OK. Sau đó, bạn mở lại hộp thoại Format Cells đã nói ở trên, nhưng lần này thì bạn đánh dấu vào tùy chọn Locked, và nếu bạn thích ẩn ln cơng thức (khơng cho thấy) thì đánh dấu vào tùy chọn Hidden, nhấn OK. Việc cuối cùng là Protect bảng tính: Chọn Home trên Ribbon, nhấn vào Format trong nhóm Cells, rồi nhấn vào Protect Sheet...; hoặc chọn Review trên Ribbon, rồi nhấn vào Protect Sheet [E2003: Tools | Protection | Protect Worksheet]:

Chọn Protect Sheet từ Home

Chọn Protect Sheet từ Review

Trong hộp thoại Protect Sheet, bỏ đánh dấu ở tùy chọn Select locked cells, chỉ cho phép Select unlocked cells (chọn những ơ khơng khóa), và nhập vào một

Bỏ tùy chọn Select locked cells trong hộp thoại Protect Sheet

Vậy là xong. Từ bây giờ, những ô chứa công thức của bạn sẽ được bảo vệ, có thể khơng xem thấy được nếu bạn đã chọn Hidden, bạn không lo những công thức này bị can thiệp nữa.

Sử dụng Data-validation

Sử dụng Data-validation, chỉ là đơn giản khơng cho ghi đè vào những ơ có chứa cơng thức, nghĩa là không cho sửa công thức. Tuy nhiên, phương pháp này chỉ phịng ngừa cho chính bạn, nghĩa là tránh việc táy máy sửa lại cái gì đó trong những ơ chứa cơng thức, chứ thật ra, mặc dù đã được "Validation", bạn vẫn có thể xóa cơng thức, hoặc dán vào những ơ đó bất kỳ dữ liệu nào bạn thích... Nói chung nó khơng bảo vệ được gì nhiều. Nhưng cũng xin nói sơ qua về phương pháp này: Để thực hiện, bạn hãy chọn những ô chứa ô công thức bằng chức năng Go To

Specials mà tơi đã nói ở trên. Rồi, với những ơ chứa công thức đang được chọn,

bạn gọi Data Validation từ menu Data trên Ribbon [E2003: Data | Validation]. Trong hộp thoại này, chọn tab Settings, chọn Custom cho khung Allow, và nhập công thức này: =" " vào khung Formula, rồi nhấn OK, như hình sau:

Sử dụng Data Validation để bảo vệ những ô chứa công thức

Kể từ đây, mỗi khi bạn nhập bất kỳ thứ gì vào trong những ô chứa công thức, hoặc bạn muốn sửa lại cơng thức, sẽ có một cảnh báo xuất hiện, ngăn không cho bạn nhập vào. Xin nhắc lại, phương pháp này khơng cấm việc xóa hẳn cơng thức, cũng như dán đè thứ gì đó vào những ơ chứa cơng thức.

Tự động bật tắt chức năng bảo vệ

Phương pháp này, sẽ tự động bật chức năng bảo vệ bảng tính (Protect) mỗi khi bạn chọn một ơ đã được khóa (locked), nhưng nó cũng sẽ tự động tắt chức năng bảo vệ khi bạn chọn một ơ khơng bị khóa.

Để bắt đầu, bạn hãy chắc chắn rằng những ô bạn muốn bảo vệ (ơ chứa cơng thức) đã được khóa, cịn những ơ khơng cần bảo vệ thì khơng bị khóa, như tơi đã trình bày ở phương pháp thứ nhất. Sau đó, bạn nhấn Alt+F11, nhấn vào Sheet mà bạn muốn bảo vệ các ơ đã khóa ở trong đó, rồi nhập vào trong khung soạn thảo đoạn code sau đây:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Locked = True Then

Else

Me.Unprotect Password:="Secret" End If

End Sub

Nếu không cần đến password, bạn không cần dùng đoạn Password:="Secret", hoặc nếu muốn Password là thứ gì khác, bạn sửa lại chữ Secret bằng cái bạn muốn. Nếu bạn lo rằng người ta có thể vào trong khung soạn thảo VBA để xem password, bạn có thể bảo vệ các code này (không cho xem) bằng cách chọn Tools ➝

VBAProject Properties, chọn tab Properties, chọn Lock Project for Viewing,

và nhập vào một password.

Tuy nhiên, phương pháp này cũng khơng hoạt động hồn hảo, mặc dù nó cũng giúp bạn được phần nào việc bảo vệ các cơng thức. Từ khóa Target được sử dụng trong đoạn code sẽ chỉ để tham chiếu đến ô đang "active" ngay tại thời điểm nó được chọn (xin nói thêm, cho dù bạn chọn một dãy, nhưng trong dãy đó, chỉ có một ơ "active" mà thơi, là ơ đang có màu khác với những ơ cịn lại). Vì lý do này, nếu một người nào đó chọn một dãy các ơ (với ơ "active" khơng bị khóa), thì người đó có thể xóa tồn bộ dãy ơ này, bởi vì khi đó thì chức năng Unprotect đã được tự động bật!

Một phần của tài liệu Những tuyệt chiêu hay trong excel (Trang 47 - 54)

Tải bản đầy đủ (DOCX)

(185 trang)
w