我获得了VBA代码,用于在Excel文件中填充一些T-SQL查询数据。在该数据中,一列包含红色,琥珀色,绿色和N / A的值。现在我想根据这些值(红色,琥珀色,绿色和白色)获得背景颜色。我怎么能在VBA中做到这一点?
编辑:我需要像这样:
id firstname lastname complaint
1 paul nixon RED
2 John nathon RED
3 sera teag AMBER
4 CLARE walker GREEN
现在我根据单元格值想要列'投诉'的背景颜色,就像单元格值RED我想要的背景颜色也是RED等等。在VBA代码中。
答案 0 :(得分:1)
更改单元格的背景颜色很简单。确定改变它的颜色是这里的关键步骤。如果你知道这4种颜色是唯一的选择,我只会敲出案例并设置颜色。如果您发现这种颜色越来越多,您可能希望在字典中定义它们并执行查找而不是SELECT-CASE构造。
这个简单的代码适用于您的示例。您需要根据实际应用更好地定义范围(可能不是“D2:D5”)并调整颜色。
Sub ColorWithText()
Dim cell As Range
For Each cell In Range("D2:D5")
Select Case UCase(cell.Value)
Case "RED"
cell.Interior.Color = RGB(255, 0, 0)
Case "AMBER"
cell.Interior.Color = RGB(255, 191, 0)
Case "GREEN"
cell.Interior.Color = RGB(0, 255, 0)
Case "WHITE"
cell.Interior.Color = RGB(255, 255, 255)
End Select
Next cell
End Sub
以下是代码运行后我的Excel实例的图片。
答案 1 :(得分:-1)