VBA100本ノック 35本目:条件付き書式

こちらで公開されている、100本ノックに挑戦。
www.excel-ubara.com
素晴らしい教材を公開いただき、ありがとうございます。

上記リンク先から、問題文を転載。

行や列のコピー等と共に条件付き書式が増殖するのは、もはや宿命と言って
良いほど、定期的に遭遇する問題だと思う。

また、VBAで条件付き書式を設定することの是非についても、自分の中で
肯定派と否定派が定期的に順位を入れ替えている。

それはさておき、今回作成したのがこちら。

Sub VBA_100Knock_35()
    Dim TargetRange As Range
    Set TargetRange = Intersect(Range("B2").CurrentRegion, Union(Columns("E"), Columns("G")))

        Cells.FormatConditions.Delete
        
        ' 一つ目の条件付き書式。
        TargetRange.FormatConditions.Add Type:=xlExpression, Formula1:="=E2<1"
        TargetRange.FormatConditions(TargetRange.FormatConditions.Count).SetFirstPriority
        
        With TargetRange.FormatConditions(1).Font
            .Color = -16776961
            .TintAndShade = 0
        End With
        TargetRange.FormatConditions(1).StopIfTrue = False

        ' 二つ目の条件付き書式。
        ' FormatContiions(1)としたことで、先に設定した条件付き書式が
        ' 二番目に繰り下がっている。
        TargetRange.FormatConditions.Add Type:=xlExpression, Formula1:="=E2<0.9"
        TargetRange.FormatConditions(TargetRange.FormatConditions.Count).SetFirstPriority
        With TargetRange.FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .Color = 255
            .TintAndShade = 0
        End With
        TargetRange.FormatConditions(1).StopIfTrue = True
        
End Sub

※冒頭リンク先の解答例および解説も、ぜひご一読ください。

参考まで。