Thiết lập định dạng có điều kiện cho một khu vực bằng VBA trong Microsoft Excel
Trong bài viết này, chúng tôi sẽ tạo macro để áp dụng định dạng có điều kiện trong vùng đã chọn.
Chúng tôi đã sử dụng số ngẫu nhiên làm dữ liệu mẫu để chứng minh hoạt động của macro.
Macro có thể được thực thi bằng cách nhấp vào nút “Tìm Max” trên trang “Chính”.
Giải thích logic
Chúng tôi đã tạo macro “Định dạng có điều kiện” để áp dụng định dạng có điều kiện cho vùng đã chọn. Macro này làm nổi bật ô bằng màu tím, chứa giá trị lớn nhất trong vùng đã chọn.
Trước khi thực hiện macro này, người ta phải chọn một khu vực mà anh ta muốn áp dụng định dạng có điều kiện.
Ví dụ: chúng tôi đã chọn một dải ô từ B9 đến F17 làm mẫu dữ liệu đã chọn.
Khi thực thi macro sau khi chọn vùng mẫu, định dạng có điều kiện được áp dụng trên vùng đã chọn và ô D16, chứa giá trị cao nhất (97), sẽ được đánh dấu bằng màu tím.
Bây giờ, hãy lấy một mẫu khác. Chúng tôi đã chọn phạm vi từ ô B10 đến F13 làm vùng mẫu thứ hai.
Sau khi chọn vùng mẫu thứ hai, hãy nhấp vào nút “Tìm Tối đa” để chạy macro. Định dạng có điều kiện sẽ được áp dụng trên vùng đã chọn và ô C11 sẽ được đánh dấu bằng màu tím vì nó chứa giá trị lớn nhất (92) trong vùng đã chọn.
Sau khi thực thi macro cho hai mẫu khác nhau, định dạng có điều kiện được áp dụng cho cả hai mẫu. Trong dữ liệu mẫu, cả hai ô C11 và D16 sẽ được đánh dấu bằng màu tím, vì chúng đại diện cho các giá trị lớn nhất trong các mẫu tương ứng của chúng.
Nếu các giá trị trong bất kỳ mẫu nào bị thay đổi và một trong các giá trị mới được chèn vào là giá trị cao nhất thì ô có giá trị cụ thể đó sẽ được tô sáng.
Giải thích mã
Selection.FormatConditions.Delete Đoạn mã trên được sử dụng để xóa mọi định dạng có điều kiện được áp dụng trên dữ liệu đã chọn.
Selection.FormatConditions.Add Type: = xlExpression, Formula1: = _ “=” & Selection.Cells (1) .Address (False, False) & “= MAX (” & Selection.Address & “)”
Đoạn mã trên được sử dụng để thêm một định dạng có điều kiện mới. Kiểu chỉ định rằng biểu thức được sử dụng để áp dụng định dạng điều kiện. Công thức của biểu thức được xác định trong Công thức 1.
Selection.Cells (1) .Address (False, False)
Đoạn mã trên được sử dụng để tham chiếu địa chỉ của ô đầu tiên trong vùng chọn.
“=” & Selection.Cells (1) .Address (False, False) & “= MAX (” & Selection.Address & “)”
Đoạn mã trên được sử dụng để so sánh giá trị của ô được chọn đầu tiên với giá trị lớn nhất của vùng chọn.
Selection.FormatConditions (1) .Interior.ColorIndex = 39 Đoạn mã trên được sử dụng để gán màu tím cho ô thỏa mãn điều kiện định dạng.
Vui lòng theo dõi bên dưới để biết mã
Sub ConditionalFormat() With Selection 'Delete any previous conditional formatting .FormatConditions.Delete 'add conditional formatting to selected cell .FormatConditions.Add Type:=xlExpression, Formula1:= _ "=" & Selection.Cells(1).Address(False, False) & "=MAX(" & Selection.Address & ")" 'Assigning Violet color for the conditional formatting .FormatConditions(1).Interior.ColorIndex = 39 End With End Sub
Nếu bạn thích blog này, hãy chia sẻ nó với bạn bè của bạn trên Facebook và Facebook.
Chúng tôi rất muốn nghe ý kiến từ bạn, hãy cho chúng tôi biết cách chúng tôi có thể cải thiện công việc của mình và làm cho nó tốt hơn cho bạn. Viết thư cho chúng tôi [email protected]