条件付き書式の「条件」が数式の場合のカウント
条件付き書式で「条件」が数式の場合、その条件を満たすセルの数をカウントするマクロを作ってみました。しかし、条件を満たすセルの数をカウントするには、こんなもん使うよりも作業セルを用いて判定結果を出しておいて、それをカウントするようにした方が確実です。
結構手抜きで作っているので、「条件」が1つの場合だけしか使えません。しかも、いろいろ不備がある可能性があり、実用向きではありません(汗)。
なお、Call している関数は「数式文字列-A1方式・R1C1方式-変換」に書いてあるものです。
Sub Test1() Dim rngT As Range ' 条件付き書式の設定されているセル範囲 Dim rngA As Range Dim fcA As FormatCondition Dim wkCount As Long Dim wkFA1 As String Dim wkFR1C1 As String Set rngT = Worksheets("Sheet1").Range("B2:J10") rngT.Parent.Select Application.ReferenceStyle = xlA1 For Each rngA In rngT Set fcA = rngA.FormatConditions(1) wkFA1 = fcA.Formula1 Call A1ToR1C1(wkFA1, rngT.Cells(1, 1).Address(False, False), wkFR1C1) Call R1C1ToA1(wkFR1C1, rngA.Address(False, False), wkFA1) If Application.Evaluate(wkFA1) Then wkCount = wkCount + 1 End If Next rngA MsgBox wkCount, vbInformation End Sub