Cách khóa các ô dựa trên màu trong Microsoft Excel

OFFICES


Microsoft Excel cho phép bạn áp dụng định dạng có điều kiện cho các ô. Nếu giá trị trong một ô đáp ứng các quy tắc nhất định mà bạn đã đặt, tính năng định dạng có điều kiện sẽ thay đổi màu của văn bản trong ô hoặc màu tô hoặc cả hai. Đây là một tính năng cơ bản hoạt động ngay lập tức, tuy nhiên, nếu bạn muốn khóa các ô dựa trên màu sắc, bạn cần một tập lệnh VBA nhỏ để thực hiện điều đó.

Bạn có thể sử dụng định dạng có điều kiện để thay đổi màu của ô hoặc bạn có thể thay đổi màu theo cách thủ công thành bất kỳ thứ gì bạn muốn. Tập lệnh VBS không phụ thuộc vào định dạng có điều kiện để khóa ô. Nó chỉ cần một ô được tô màu.

Khóa các ô dựa trên màu sắc

Trước khi có thể tạo tập lệnh VBA, bạn cần biết màu của ô mà bạn đang tham chiếu. VBA không nhìn thấy màu sắc như chúng vốn có; nó tham chiếu đến chúng thông qua mã màu của chúng.

Điều đầu tiên bạn cần làm là tạo màu cho ô của bạn. Chúng tôi đã sử dụng màu vàng cơ bản đủ dễ tham khảo. Nếu bạn chọn màu khác, hãy sử dụng trang web này để tìm mã màu bạn cần sử dụng. Mã màu mà chúng tôi đang sử dụng cho màu vàng là # FFFF00.

Trong Excel, hãy bật tab Nhà phát triển, rồi chuyển sang tab đó. Nhấp vào nút Visual Basic và dán phần sau vào ‘Trang tính này’. Kịch bản này được viết bởi người dùng Superuser Dave.

Sub WalkThePlank()

dim colorIndex as Integer
colorIndex = FFFF00

Dim rng As Range

For Each rng In ActiveSheet.UsedRange.Cells

Dim color As Long
color = rng.Interior.ColorIndex
If (color = colorIndex) Then 
rng.Locked = True
else
rng.Locked = false 
End If

Next rng

End Sub

Chạy tập lệnh và nó sẽ khóa tất cả các ô có màu bạn đặt. Mã màu bạn tìm thấy cho màu của mình sẽ được đặt ở dòng này trong tập lệnh;

colorIndex = FFFF00

FFFF00 đại diện cho màu vàng và đó là thứ bạn cần thay thế bằng bất kỳ mã màu nào áp dụng cho màu bạn đang sử dụng. Chúng ta nên đề cập rằng tốt nhất nên đi với một màu cơ bản. Sau khi thêm tệp này, bạn sẽ cần lưu tệp Excel của mình dưới dạng tệp hỗ trợ macro nếu không tập lệnh VBA sẽ không lưu.

Các ô bị khóa có thể dễ dàng được mở khóa. Khóa không phải là khóa được bảo vệ bằng mật khẩu ngăn người khác thay đổi giá trị của ô nếu họ muốn. Đó là một khóa thông thường ngăn các thay đổi ngẫu nhiên trong tệp.



Source link

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *