条件格式化循环

时间:2015-11-12 20:32:20

标签: vba conditional-formatting do-loops

我的代码我想申请大约1,200多行。对于我希望它应用的第一行工作正常,如果declare n number(2) := &n; a abc.id%type; b abc.name%type; i number(2); begin for i in 1..n loop a := &a; b := &b; insert into abc values(a,b); end loop; end; 然后行2:2变为红色,我想重复abc(id, name)然后3:3红色等等...

AC2 >= 1

2 个答案:

答案 0 :(得分:1)

如@vacip所述,VBA对此可能是不必要的。选择工作表中的所有单元格,然后选择HOME>样式 - 条件格式,新规则...,使用公式确定要格式化的单元格格式化此公式的值:

=N($AC1)>=1

格式化... ,选择格式化,OK,OK。

这也适用于Row1,但是将范围设置为整个工作表的最简单方法。如果AC1包含等于或大于1的数字,并且您不希望格式应用于Row1,请调整条件格式规则管理器中的应用于范围,或者为Row1添加另一个规则,无论格式是什么(或没有)你确实想要它并确保规则具有优先权。或者,将公式扩展为:

=AND(ROW()<>1,N($AC1)>=1)

答案 1 :(得分:0)

试试这个

    Sub Colour()

    Dim iCount As Integer
    For iCount = 2 To 4 Step 1
        Rows(iCount & ":" & iCount).Select
        Range("U" & iCount).Activate
        Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$AC$" & iCount & ">=1"
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .Color = 255
            .TintAndShade = 0
        End With
        Selection.FormatConditions(1).StopIfTrue = False
    Next
End Sub

这将从2 - 4循环,您可以尝试更多只需将4更改为您想要的数字....