2017-06-07 292 views
0

我试图编写代码来为列D中所有不是格式为ow,ol,od的单元格着色。但是,无论单元格值如何,我的代码都会对所有单元格着色我可能需要你的帮助。单元格着色vba excel

Data Column D

Sub colour() 

For Z = 1 To ActiveSheet.UsedRange.Rows.Count 
    If Cells(Z, 4) = "OW" And Cells(Z + 1, 4) = "OL" And Cells(Z + 2, 4) = "OA" Then 
    Else 
    Cells(Z, 4).Interior.ColorIndex = 7 
    End If 
Next Z 

End Sub 

回答

0
If Cells(Z, 4) = "OW" And Cells(Z + 1, 4) = "OL" And Cells(Z + 2, 4) = "OA" 

你的代码检查(I甚至测试它)如果在一列中连续3个细胞具有值 “OW”, “OL” 和 “OA”。例如,如果D1 =“OW”,D2 =“OL”和D3 =“OA”,那么单元格D1将不会着色。在其他情况下,它会。

如果这不是你正在寻找的,然后尝试阐述你的目标。

+0

这就是我想检查是否D1 =“OW”,D2 =“OL”和D3 =“OA”如果是的话比不着色和如果不是彩色。如果D1 =“OW”,D2 =“OL”和D3 =“OL”,则重复取样。我真的不理解它,因为当我运行宏时,它会为每个单元格着色...... – pati

+0

D1 =“OW”,D2 =“OL”和D3 =“OL”。 你没有检查。只有3个单元格具有OW OL和OA的特定顺序时,您的代码才会着色。 – Alluton