Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel

Thay đổi màu nền trong Excel VBA rất dễ dàng. Sử dụng thuộc tính bên trong để trả về một đối tượng nội thất. Sau đó sử dụng thuộc tính ColorIndex của đối tượng bên trong để đặt màu nền của ô.background colors in Excel VBA is easy. Use the Interior property to return an Interior object. Then use the ColorIndex property of the Interior object to set the background color of a cell.

Đặt ba nút lệnh trên bảng tính của bạn và thêm các dòng mã sau:

1. Dòng mã bên dưới đặt màu nền của ô A1 thành màu xanh nhạt.

Phạm vi ("A1"). Nội thất.colorindex = 37

Result:

Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel

2. Dòng mã sau đây đặt màu nền của ô A1 thành 'Không điền'.

Phạm vi ("A1"). Nội thất.colorindex = 0

Result:

Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel

3. Nếu bạn muốn biết số màu của một màu, chỉ cần hỏi Excel VBA.

MSGBOX Lựa chọn.Interior.ColorIndex

Chọn ô A1 và nhấp vào nút Lệnh trên trang tính:

Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel

Result:

Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel

4. Thuộc tính ColorIndex cho phép truy cập vào bảng màu gồm 56 màu.

Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel

Lưu ý: Tải xuống tệp Excel để xem cách chúng tôi tạo bảng màu này.

5. Nếu bạn không thể tìm thấy màu cụ thể mà bạn đang tìm kiếm, hãy sử dụng thuộc tính màu và chức năng RGB.

Phạm vi ("A1"). Nội thất.Color = RGB (255, 0, 0)

Giải thích: RGB là viết tắt của màu đỏ, xanh lá cây và xanh dương. Đây là ba màu chính. Mỗi thành phần có thể mang một giá trị từ 0 đến 255. Với chức năng này, bạn có thể tạo mọi màu sắc. RGB (255,0,0) cho màu đỏ nguyên chất (ColorIndex = 3 tạo ra kết quả chính xác tương tự).

Áp dụng cho: Microsoft Excel 365, 2021, 2019, 2016.

Trong ngày hôm nay, VBA cho hướng dẫn tự động hóa Excel, chúng tôi sẽ tìm hiểu về cách chúng tôi có thể lập trình thay đổi màu sắc của một ô dựa trên giá trị ô.

Chúng ta có thể sử dụng kỹ thuật này khi phát triển bảng tính bảng điều khiển chẳng hạn.

Bước #1: Chuẩn bị bảng tính của bạn

Nếu bạn chưa phát triển trên Excel, chúng tôi khuyên bạn nên xem xét hướng dẫn giới thiệu của chúng tôi về các macro Excel. Bạn cũng cần đảm bảo rằng tab Nhà phát triển có sẵn trong Ribbon Microsoft Excel của bạn, vì bạn sẽ sử dụng nó để viết một số mã đơn giản.

  • Mở Microsoft Excel. Lưu ý rằng mã được cung cấp trong hướng dẫn này dự kiến ​​sẽ hoạt động trong Excel 2007 và hơn thế nữa.
  • Trong một bảng tính trống, thêm bảng sau:

Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel

  • Bây giờ hãy tiếp tục và xác định một phạm vi được đặt tên bằng cách nhấn: Công thức >> Xác định tên
Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel
  • Đánh OK

Bước #2: Thay đổi màu bên trong ô dựa trên giá trị với cell.interior.color

  • Đánh vào mục phát triển trong dải ruy băng.Developer entry in the Ribbon.
  • Nhấn Visual Basic hoặc Alt+F11 để mở trình chỉnh sửa VBA nhà phát triển của bạn.
  • Tiếp theo làm nổi bật bảng tính mà bạn muốn chạy mã của mình. Ngoài ra, chọn một mô -đun có mã VBA của bạn.
  • Đi trước và dán mã này. Trong ví dụ của chúng tôi, chúng tôi sẽ sửa đổi màu bên trong của một loạt các ô thành các giá trị RGB tế bào cụ thể tương ứng với các màu đỏ, vàng và xanh lá cây.
  • Cụ thể, chúng tôi sử dụng ô Excel VBA Cell.Interior.Color và vượt qua giá trị RGB hoặc chỉ số màu tương ứng.Cell.Interior.Color and pass the corresponding RGB value or color index.
Sub Color_Cell_Condition()

Dim MyCell As Range
Dim StatValue As String
Dim StatusRange As Range

Set StatusRange = Range("Status")

For Each MyCell In StatusRange

StatValue = MyCell.Value
Select Case StatValue

    Case "Progressing"
    MyCell.Interior.Color = RGB(0, 255, 0)
    
    Case "Pending Feedback"
    MyCell.Interior.Color = RGB(255, 255, 0)
    
    Case "Stuck"
    MyCell.Interior.Color = RGB(255, 0, 0)

End Select

Next MyCell

End Sub
  • Chạy mã của bạn - bằng cách nhấn trên F5 hoặc chạy >> chạy phụ / userform.
  • Bạn sẽ nhận thấy bảng điều khiển trạng thái được điền như hình dưới đây:

Hướng dẫn macro to color cells in excel - macro để tô màu các ô trong excel

  • Lưu mã của bạn và đóng Trình chỉnh sửa VBA của bạn.