Đô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 trong Excel. Hãy cùng Gitiho tìm hiểu cách làm với VBA Excel tròng bài học Excel online dưới đây nhé.
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
Tất cả các tham số trên đều là tùy chọn, bạn đọc có thể tham khảo phương thức Protect Sheet trong VBA tại đây.
Lưu ý: Nếu bạn chỉ để Ws.Protect thì Ws sẽ được khoá nhưng không có mật khẩu, để khoá kèm theo mật khẩu thì bạn cần truyền mật khẩu cho tham số Password: =”Mat_khau_ban_muon_dat”, cụ thể như hình trên:
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.
Để tự động hóa quy trình cũng như tiết kiệm thời gian và tăng hiệu suất làm việc, mời bạn đọc tham khảo khóa học VBA sau của Gitiho:
Có 2 nguyên nhân chính khiến Excel không nhận công thức phép tính bạn nhập đó là:
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.
Khóa học phù hợp với bất kỳ ai đang muốn tìm hiểu lại Excel từ con số 0. Giáo án được Gitiho cùng giảng viên thiết kế phù hợp với công việc thực tế tại doanh nghiệp, bài tập thực hành xuyên suốt khóa kèm đáp án và hướng dẫn giải chi tiết. Tham khảo ngay bên dưới!