Làm thế nào để bảo vệ hoặc khóa các giá trị ô dựa trên màu nền?
Giả sử, tôi có một trang tính lớn và nhiều ô được tô bằng các màu nền khác nhau, bây giờ, tôi muốn khóa hoặc bảo vệ các ô dựa trên màu tô nhất định, chẳng hạn như khóa hoặc bảo vệ tất cả các ô bằng màu đỏ. Có phương pháp nào tốt để giải quyết công việc này trong Excel không?
Bảo vệ hoặc khóa các giá trị ô dựa trên màu nền với mã VBA
Bảo vệ hoặc khóa các giá trị ô dựa trên màu nền với mã VBA
Ví dụ: tôi muốn khóa và bảo vệ tất cả các ô màu đỏ, để ngăn người dùng khác sửa đổi các giá trị ô này, mã VBA sau có thể giải quyết công việc này cho bạn, vui lòng làm như sau:
1. Giữ ALT + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Mô-đun Cửa sổ.
Mã VBA: Bảo vệ hoặc khóa các giá trị ô dựa trên màu sắc:
Sub lockcellsbycolor()
'Updateby Extendoffice
Dim colorIndex As Integer
colorIndex = 3
Dim xRg As Range
Application.ScreenUpdating = False
For Each xRg In ActiveSheet.UsedRange.Cells
Dim color As Long
color = xRg.Interior.colorIndex
If (color = colorIndex) Then
xRg.Locked = True
Else
xRg.Locked = False
End If
Next xRg
Application.ScreenUpdating = True
MsgBox "All specified color cells have been locked!", vbInformation, "Kutools for Excel"
End Sub
Chú thích: Trong đoạn mã trên, số 3 trong màu Index = 3 script chỉ ra các ô màu đỏ mà tôi muốn khóa, bạn có thể thay đổi nó thành chỉ mục màu khác mà bạn muốn khóa.
3. Sau đó nhấn F5 để chạy mã này và chỉ các ô màu đỏ đã bị khóa, các ô khác được mở khóa trong phạm vi đã sử dụng của trang tính hoạt động, xem ảnh chụp màn hình:
4. Nếu bạn muốn bảo vệ chúng khỏi bị sửa đổi bởi những người dùng khác, bạn chỉ cần áp dụng Bảo vệ Sheet tính năng để bảo vệ trang tính này.
Mẹo: Để lấy số chỉ mục màu, bạn có thể áp dụng Hàm do Người dùng Xác định sau:
Function GetColor(x As Range) As Integer
GetColor = x.Interior.ColorIndex
End Function
Các công cụ năng suất văn phòng tốt nhất
Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn
- Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
- Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
- Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
- Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
- Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
- Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
- Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
- Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
- Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!




