过滤行VBA上的替代着色

时间:2014-08-08 13:56:41

标签: excel vba excel-vba

您好我想按照A列中的值替换过滤表中的颜色行。

预期结果将是

-row 2-3(A列值= 1)将获得一种颜色,例如黄

-row 4(A列值= 2)将获得另一种颜色

-row 5-6(A列值= 3)将再次变黄

如何使用VBA在过滤表中执行此操作?

1 个答案:

答案 0 :(得分:0)

我认为这里着色的条件是奇数或偶数。你可以试试,

Sub AlterColour()
Dim intRowCount, intLastRow, intValue, intPreValue as Integer


intLastRow = Application.CountA(Sheets(1).Range("a:a"))

'Set first row to a colour 
Sheets(1).Range("a" & 1 ).Interior.ColorIndex = '[An Integer Here, index 36 for yellow]

'Note: inteRowCount = 2 if there is no header, otherwise set to 3
For intRowCount = 2 to intLastRow

intValue = Sheets(1).Range("a" & intRowCount ).Value
intPreValue = Sheets(1).Range("a" & (intRowCount - 1) ).Value

If intValue = intPreValue Then 
     Sheets(1).Range("a" & intRowCount ).Interior.ColorIndex = '[An Integer Here, index 36 for yellow] 

Else 
     Sheets(1).Range("a" & intRowCount ).Interior.ColorIndex = ' [An Integer Here, index for other colour] 

End If
Next
End Sub