Cập nhật lần cuối: tháng 8 năm 2021; Microsoft Excel 365, 2019, 2016.
Trong hướng dẫn Tự động hóa VBA cho Excel ngày hôm nay, chúng ta sẽ tìm hiểu về cách chúng ta có thể thay đổi màu của ô theo chương trình dựa trên giá trị ô.
Ví dụ, chúng ta có thể sử dụng kỹ thuật này khi phát triển một bảng điều khiển trạng thái đơn giản.
Thành lập
Nếu bạn chưa phát triển trên Excel, chúng tôi khuyên bạn nên xem hướng dẫn giới thiệu của chúng tôi về Macro Excel . Cụ thể, bạn cần đảm bảo rằng tab Nhà phát triển có sẵn trong Ruy băng Microsoft Excel, vì bạn sẽ sử dụng tab này để 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 trang tính trống, hãy thêm bảng sau:

- 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
![Làm cách nào để đặt màu ô Excel theo một điều kiện với VBA? Làm cách nào để đặt màu ô Excel theo một điều kiện với VBA?]()
Thay đổi màu bên trong ô dựa trên giá trị với Cell.Interior.Color
- Nhấn vào mục nhập Nhà phát triển trong Ribbon.
- Nhấn Visual Basic hoặc Alt + F11 để mở trình chỉnh sửa VBA dành cho nhà phát triển của bạn.
- Tiếp theo đánh dấu Trang tính mà bạn muốn chạy mã của mình. Ngoài ra, hãy chọn một mô-đun có mã VBA của bạn.
- Hãy tiếp tụ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 dải ô thành các giá trị RGB của ô cụ thể tương ứng với các màu đỏ, vàng và xanh lục.
- Cụ thể, chúng tôi sử dụng phương pháp Excel VBA Cell.Interior.Color và chuyển giá trị RGB hoặc chỉ số màu tương ứng.
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 F5 hoặc Run >> Run Sub / UserForm.
- Bạn sẽ nhận thấy trang tổng quan trạng thái đã được điền như hình dưới đây:
![Làm cách nào để đặt màu ô Excel theo một điều kiện với VBA? Làm cách nào để đặt màu ô Excel theo một điều kiện với VBA?]()
- Lưu mã của bạn và đóng trình soạn thảo VBA của bạn.