Excel vba định dạng có điều kiện toàn bộ cột
Chào mừng trở lại blog VBA. Tuần này, chúng ta sẽ mở rộng kiến thức về cách đánh dấu các ô đã chọn trong một trang tính từ bài báo tuần trước Tuần trước, chúng tôi đã sử dụng cả tập lệnh VBA và định dạng có điều kiện để đánh dấu hàng và cột của các ô đã chọn. Tuần này, chúng ta sẽ tạo tập lệnh VBA để đạt được hiệu quả tương tự như blog của tuần trước Chúng tôi muốn thêm các hàng và cột đánh dấu cho tập dữ liệu bên dưới Kết quả sẽ như thế này Bước đầu tiên là thêm một sự kiện SelectionChange mới vào trang tính mục tiêu như được mô tả trước đó, cùng với một số biến có liên quan Sau đó, chúng ta sử dụng câu lệnh On Error Resume Next. Là một trong những thủ tục xử lý lỗi được sử dụng nhiều nhất, nó cho phép thực thi tiếp tục bất chấp lỗi thời gian chạy Chúng tôi xóa định dạng hiện tại trong các ô của trang tính đích (Nếu có) và gán chỉ mục màu cho biến iColor tế bào. điều kiện định dạng. Xóa bỏ iColor = 15 Sau đó, chúng tôi sử dụng câu lệnh With để định vị toàn bộ định dạng hàng của ô mục tiêu. Ở đây, chúng tôi xóa định dạng ô đích, thêm tham số loại điều kiện định dạng xlExpression, chỉ định xem định dạng có điều kiện dựa trên giá trị ô hay biểu thức, sau đó gán chỉ mục màu cho chỉ mục màu bên trong của ô đích với mục tiêu. Toàn bộ hàng. điều kiện định dạng . Xóa bỏ . Thêm xlExpression, , "TRUE" . Mục 1). Nội địa. Chỉ số màu = iColor Kết thúc với Tiếp theo, chúng tôi áp dụng logic mã hóa tương tự cho toàn bộ định dạng cột của ô mục tiêu như mã được chỉ ra bên dưới Lưu ý rằng bạn cần chỉnh sửa G1 thành ô đầu tiên của phạm vi được định dạng; . Nếu bạn chỉ bắt đầu ở hàng thứ hai thì tham chiếu ô sẽ là G2, đây sẽ là ô đầu tiên của phạm vi Đoạn mã VBA sau sẽ thực hiện định dạng Điều kiện trên toàn bộ cột. Chỉnh sửa tên trang tính và Id cột theo yêu cầu của bạn. Cũng chỉnh sửa màu sắc Tôi đã cung cấp các tùy chọn cho các phương pháp đặt màu. Phương pháp RGB là tốt nhất để bạn có thể đặt chính xác các màu được yêu cầu. Để lấy mã RGB, trên một trang tính, hãy chọn ô bất kỳ rồi chọn danh sách thả xuống màu. Chọn một màu rồi chọn "Màu khác" và trên hộp thoại, chọn tab Tùy chỉnh và bạn sẽ thấy mã màu rgb Bạn cũng có thể sử dụng các hằng số màu giới hạn như sau. (Mã ví dụ nhận xét cho việc sử dụng này) Đánh dấu các ô dựa trên toán tử so sánh và giá trị (Tối đa 3 điều kiện)Sử dụng điều kiện định dạng. Thêm FormatConditions là một thuộc tính của đối tượng Range. Add có các thông số sau. Bộ sưu tập FormatConditions chỉ có thể chứa 3 FormatConditions FormatConditions.Add(Type, Operator, Formula1, Formula2) Tham số Loại có các tùy chọn sau. Đối với loại điều kiện này, hãy sử dụng xlCellValue Nhấn vào đây để đăng ký khóa học VBA Excel cơ bản Tất cả các giao dịch mua giúp hỗ trợ blog này - cảm ơn Sự miêu tả Tên Giá trị Điều kiện trên trung bình xlTình trạng trên mức trung bình 12 Điều kiện trống xlTrốngĐiều kiện 10 giá trị ô xlCellValue 1 thang màu xlThang màu 3 thanh dữ liệu xlDatabar 4 tình trạng lỗi xlErrorsĐiều kiện 16 Sự diễn đạt xlExpression 2 Bộ biểu tượng XlBiểu TượngBộ 6 Không có điều kiện trống xlKhông có khoảng trốngĐiều kiện 13 Không có điều kiện lỗi xlNoErrorsTình trạng 17 chuỗi văn bản xlTextString 9 khoảng thời gian xlThời gianThời gian 11 10 giá trị hàng đầu xlTop10 5 Giá trị duy nhất xlGiá trị duy nhất 8 Tham số Người vận hành có các tùy chọn sau. xlBetween,xlEqual, xlGreater, xlGreaterEqual, xlLess, xlLessEqual, xlNotBetween hoặc xlNotEqual. Sử dụng thông số này cùng với thông số Công thức 1 và Công thức 2 Sub threecf() Dim rg As Range Dim cond1 As FormatCondition, cond2 As FormatCondition, cond3 As FormatCondition Set rg = Range("A2", Range("A2").End(xlDown)) 'clear any existing conditional formatting rg.FormatConditions.Delete 'define the rule for each conditional format Set cond1 = rg.FormatConditions.Add(xlCellValue, xlGreater, "=$a$1") Set cond2 = rg.FormatConditions.Add(xlCellValue, xlLess, "=$a$1") Set cond3 = rg.FormatConditions.Add(xlCellValue, xlEqual, "=$a$1") 'define the format applied for each conditional format With cond1 .Interior.Color = vbGreen .Font.Color = vbWhite End With With cond2 .Interior.Color = vbRed .Font.Color = vbWhite End With With cond3 .Interior.Color = vbYellow .Font.Color = vbRed End With End Sub Đoạn mã trên áp dụng định dạng có điều kiện được hiển thị bên dưới Nhấn vào đây để đăng ký khóa học VBA Excel cơ bản Tất cả các giao dịch mua giúp hỗ trợ blog này - cảm ơn Đánh dấu các ô dựa trên toán tử so sánh và giá trị (Không giới hạn về quy tắc)Để áp dụng nhiều hơn 3 định dạng có điều kiện cho một phạm vi, bạn sẽ cần sử dụng IF hoặc Select Case – xem mã bên dưới |