Để làm rõ hơn nội dung trong bảng dữ liệu Excel, hoặc đánh dấu số liệu cần chú ý, chúng ta có tùy chọn tô màu xen kẽ các dòng Excel hoặc tô màu xen kẽ ô cho Excel, tùy theo nội dung cần chú ý ở vị trí nào. Khi đó màu sắc hiển thị xen kẽ cho tất cả đối tượng dữ liệu trong bảng.
Trong trường hợp người dùng không muốn tô màu xen kẽ mà chỉ muốn có màu khi click chuột trực tiếp, thì bạn có thể sử dụng code VBA. Với cách này bảng dữ liệu sẽ được nổi bật các giá trị theo hàng hoặc cột khi đối chiếu, bằng cách click chuột khi cần sử dụng mà thôi. Bài viết dưới đây sẽ hướng dẫn bạn đọc các trường hợp tô màu tự động trong Excel.
Bước 1:
Trong file Excel cần xử lý chúng ta nhấn vào tab Developer trên thanh Ribbon rồi chọn Visual Basic hoặc nhấn tổ hợp phím Alt + F11 để mở trình soạn thảo code VBA.
Bước 2:
Hiển thị giao diện Microsoft Visual Basic for Applications, chúng ta click vào sheet hiện tại ở Project VBAProject để mở hộp thoại Sheet (Code).
Tiếp đến người dùng nhập đoạn mã code dưới đây vào giao diện rồi nhấn Alt + Q để tắt giao diện này.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) On Error Resume Next Cells.Interior.ColorIndex = 0 ActiveCell.EntireRow.Interior.ColorIndex = 8 Application.CutCopyMode = True End Sub
Bước 3:
Quay lại giao diện bảng dữ liệu Excel khi chúng ta click chuột tại 1 ô thì hàng đó sẽ được tô màu như hình dưới đây. Các hàng tự động được tô màu khi bạn click chuột.
Bước 1:
Chúng ta cũng nhấn tổ hợp phím Alt + F11 để mở trình soạn code VBA lên. Tại giao diện này bạn tiếp tục click đúp vào sheet hiện tại đang mở trong giao diện Project VBAProject. Nhập đoạn mã dưới đây vào giao diện VBA và cũng nhấn Alt + Q để tắt giao diện này.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) On Error Resume Next Cells.Interior.ColorIndex = 0 ActiveCell.EntireColumn.Interior.ColorIndex = 8 Application.CutCopyMode = True End Sub
Bước 2:
Kết quả khi bạn click chuột vào bất kỳ 1 ô thì cả cột đó đều được tô màu như hình dưới đây.
Khi bạn có yêu cầu tô màu cột hoặc hàng theo giá trị thì sẽ sử dụng 2 cách trên. Trong trường hợp phải đối chiếu so sánh dữ liệu thì chúng ta buộc phải tô màu cả ở hàng và cột.
Bước 1:
Trong giao diện nhập mã code VBA, bạn cũng nhấn vào sheet đang làm việc rồi nhập đoạn mã code dưới đây.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) On Error Resume Next Cells.Interior.ColorIndex = 0 ActiveCell.EntireRow.Interior.ColorIndex = 8 ActiveCell.EntireColumn.Interior.ColorIndex = 8 Application.CutCopyMode = True End Sub
Hoặc dùng mã code bên dưới đây nếu mã code trên có vấn đề.
Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) 'Update 20140318 Static xRow Static xColumn If xColumn <> "" Then With Columns(xColumn).Interior .ColorIndex = xlNone End With With Rows(xRow).Interior .ColorIndex = xlNone End With End If pRow = Selection.Row pColumn = Selection.Column xRow = pRow xColumn = pColumn With Columns(pColumn).Interior .ColorIndex = 6 .Pattern = xlSolid End With With Rows(pRow).Interior .ColorIndex = 6 .Pattern = xlSolid End With End Sub
Bước 2:
Sau khi đóng giao diện nhập mã VBA này, người dùng nhấn bất kỳ vào một ô và thấy cả cột và hàng đi qua ô đó đều được tô màu phân biệt với những ô còn lại.
Màu sắc cho các ô khi đánh dấu sẽ phụ thuộc vào bảng giá trị mã màu ColorIndex. Để đổi màu cho cột khi đánh dấu, chúng ta cần thay số giá trị thể hiện cho từng màu theo bảng này.
Để đổi màu chúng ta cần mở giao diện nhập mã trong VBA, rồi thay đổi số giá trị tại ColorIndex = 8 thành ColorIndex = 40 chẳng hạn.
Khi đó màu dòng trong Excel được chuyển sang màu khác.
Với kiểu tô màu cho cột và ô người dùng hoàn toàn có thế kết hợp 2 màu khác nhau trong đoạn mã code.
Kết quả cột và hàng trong Excel đã chuyển thành 2 màu khác nhau như hình dưới đây.
Thêm một cách nữa để bạn tô màu cho hàng, cột trong Excel. Chỉ cần nhập code đúng thì hàng và cột khi nhấn chuột vào đều được tô màu, dễ dàng đối chiếu, so sánh hay tìm kiếm thông tin theo hàng hoặc cột, đặc biệt với bảng tính dài.
Chúc các bạn thực hiện thành công!
Nguồn tin: quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn