Vba Excel宏:如何在一定范围内更改行的单元格颜色
我的范围是C17:W39。我希望根据E列中的值将行设置为灰色或白色。如果体积为实际值,我希望行为灰色,如果值为猜测值,我希望行为白色。我需要它,以便只改变范围内的单元格颜色,而不是整行。下面的代码适用于第一行,但我不知道如何使其在其余范围内循环。任何帮助都将不胜感激。谢谢Vba Excel宏:如何在一定范围内更改行的单元格颜色,vba,excel,Vba,Excel,我的范围是C17:W39。我希望根据E列中的值将行设置为灰色或白色。如果体积为实际值,我希望行为灰色,如果值为猜测值,我希望行为白色。我需要它,以便只改变范围内的单元格颜色,而不是整行。下面的代码适用于第一行,但我不知道如何使其在其余范围内循环。任何帮助都将不胜感激。谢谢 Sub Color() Dim myRange As Range Dim cell As Range Set myRange = Range("C17:W17") For Each ce
Sub Color()
Dim myRange As Range
Dim cell As Range
Set myRange = Range("C17:W17")
For Each cell In myRange
If cell.Value = "ACTUAL" Then myRange.Interior.ColorIndex = 15
If cell.Value = "GUESS" Then myRange.Interior.ColorIndex = 0
Next
End Sub
您可以这样更改代码:
Sub Color()
Dim myRange As Range
Dim cell As Range
Set myRange = Range("E17:E39")
For Each cell In myRange
If cell.Value = "ACTUAL" Then
Range("C" & cell.Row & ":W" & cell.Row).Interior.ColorIndex = 15
End If
If cell.Value = "GUESS" Then
Range("C" & cell.Row & ":W" & cell.Row).Interior.ColorIndex = 0
End If
Next
End Sub
这将遍历范围
E17:E39
中的每个单元格,并根据在E列中找到的值设置从C列到W列的单元格格式。我同意@pnuts。为什么不使用条件格式?可以使用或不使用VBA代码对单元格进行条件格式设置。