Nội dung chính
Đôi khi, do đặc thù của nghề nghiệp, ta bắt buộc phải dùng tính năng Protect hay Unprotect một sheet hay nhiều sheet. Hãy cùng Gitiho tìm hiểu cách làm với VBA Excel nhé.
Đăng ký ngay khóa học Tuyệt đỉnh Excel - Trở thành bậc thầy Excel trong 16 giờ
Như thường lệ, có 2 cách thức thao tác để bạn có thể sử dụng tính năng này trong Excel
Cách 1: Bạn cần vào nhóm Protect trong tab Review, tại đó bạn chọn tính năng Protect Sheet như hình dưới đây
Cách 2: Bạn click chuột phải vào Sheet mà bạn muốn Protect sau đó chọn tính năng Protect Sheet
Với số lượng các trang tính (sheet) nhỏ thì bạn hoàn toàn có thể ứng dụng 2 cách này để bảo vệ trang tính (Protect Sheet) hoặc Unprotect Sheet. Nhưng bạn sẽ gặp vấn đề nếu bạn phải áp dụng với số lượng trang tính (sheet) lớn. Vậy, có cách nào có thể bảo vệ trang tính (Protect Sheet hay Unprotect Sheet) với số lượng các sheet (trang tính) lớn hay không? Hãy xem lời giải đáp phía dưới đây.
Chỉ với thao tác đơn giản sau: bạn tạo 1 Module và nhập vào dòng Code sau:
Option Explicit Sub Protect_Unprotect_Ws() 'Khai bao bien doi tuong Ws Dim Ws As Worksheet 'Vong lap de Protect Ws voi password la “HEO” For Each Ws In Worksheets Ws.Protect Password:= “HEO” Next Ws 'Giai phong bien doi tuong Ws Set Ws = Nothing End Sub
Sau khi các bạn chay mã Code được cung cấp, kết quả thu được là các trang tính (sheet) của bạn đều được bảo vệ bởi mật khẩu là HEO, bạn có thể kiểm tra một trang tính bất kỳ trong file đó.
Bạn sẽ nhìn thấy kết quả như sau:
Tương tự như trên, bạn chỉ cần đơn giản chèn mã Code này vào:
Ws.Protect Password:=”HEO” bằng Ws.UnProtect Password:=”HEO”
Và khi Code chạy là khi các trang tính (sheet) được bỏ khóa.
Phương thức UnProtect Sheet trong VBA chỉ có 1 tham số truyền vào là Password và tham số này cũng là tuỳ chọn, nếu khi Protect Sheet bạn có đặt kèm mật khẩu thì khi UnProtect Sheet bạn cần truyền mật khẩu cho tham số này.
Nguyên nhân: Ta có thể thấy, ô A1 đang ở định dạng Text. Do đó, khi nhập hàm tính tổng từ ô C1 đến ô C5, kết quả được trả về y nguyên hàm SUM chứ không phải đáp án cần tìm.
Cách khắc phục:
1. Cần định dạng lại ô A1 (chứa công thức) thành định dạng KHÔNG PHẢI LÀ TEXT
2. Vào chế độ sửa công thức bằng cách double click (nháy đúp) sau đó nhấn nút Enter để khởi động lại công thức. Ta sẽ thu được kết quả chính xác và sửa được lỗi Excel không nhận công thức.
Excel có một chế độ được thiết lập trong mục Options/Advanced/Show formulas in cells instead of their calculated results (phím tắt Ctrl + `(nút phía bên trái bàn phím)) như hình dưới đây:
Có nghĩa là, ở chế độ này toàn bộ các công thức trong một trang tính sẽ chỉ hiển thị công thức thay vì các kết quả tính, do đó bạn đang lầm tưởng Excel không nhận công thức lúc này. Cũng như khi bạn viết công thức thì kết quả sẽ trả là công thức chứ không phải kết quả.
Cách khắc phục: Cần thực hiện 1 trong 2 thao tác đơn giản sau
Ý nghĩa của tính năng Show formulas:
Hy vọng qua bài viết này, các bạn có thể hiểu thêm về các tính năng của Excel cũng như việc xử lý dữ liệu khi gặp các tình huống cụ thể trên. Đừng quên, Gitiho còn có một khóa học về Excel và về cả VBA nếu bạn muốn tìm hiểu. Ngoài ra, không thể bỏ qua các kỹ năng tin học văn phòng khác như cách sử dụng hàm VLOOKUP, hàm IF, AND,... hay cùng luyện tập qua các bài tập Excel có đáp án Gitiho cung cấp.
Gitiho luôn cung cấp cho bạn các giải pháp tin học văn phòng chuyên nghiệp.
Hướng dẫn cách dùng hàm index trong Excel chi tiết nhất
Hướng dẫn cách copy chỉ những giá trị hiển thị sau khi lọc trong Excel
Hướng dẫn cách sắp xếp ngày trong Excel
Hướng dẫn cách dùng hàm VLOOKUP qua các ví dụ từ cơ bản đến nâng cao
Hướng dẫn cách sử dụng hàm IF với nhiều điều kiện: AND, OR, hàm IF lồng nhau và hơn thế