コンテンツにスキップ

COUNTIFCOLOR

種類: EGTools 専用関数

基準セルと色が一致するセルの個数を返します。

構文

=COUNTIFCOLOR(検査範囲, 基準セル, [文字色], [条件付き書式])

引数

引数 必須 説明
検査範囲 必須 色を調べる範囲
基準セル 必須 基準色のセル(複数なら先頭セル)
文字色 省略可能 TRUE で文字色を比較、既定 FALSE
条件付き書式 省略可能 TRUE で条件付き書式を反映した表示色を使用(関数のシートがアクティブな時のみ正確)、既定 FALSE=セルに設定した色

戻り値

基準セルと同じ色(既定はセルに設定した書式の色、条件付き書式=TRUE の場合は表示色)のセルの個数を数値で返します。COM 接続の失敗、基準色の読み取り失敗、検査対象セル数が 100,000 個を超える場合は #VALUE! を返し、検査範囲が使用領域と重ならない場合は 0 を返します。

例

数式 結果 説明
=COUNTIFCOLOR(A1:A10,C1) C1 と同じ背景色のセルの個数(セルの書式によって結果が異なります)
=COUNTIFCOLOR(A1:A10,C1,,TRUE) 条件付き書式の色を基準にした個数(セルの書式によって結果が異なります)

解説

  • 文字色=TRUE の場合は、空でないセルのみをカウントします。
  • 既定(条件付き書式を省略/FALSE)では、セルの書式に直接設定した色(Interior.Color / Font.Color)のみを使用し、条件付き書式で塗られた色は無視します。どのシートがアクティブでも、別のシートの編集や F9・全再計算を行っても結果は安定しているため、条件付き書式の色がどうしても必要な場合を除き既定値をお勧めします。
  • 条件付き書式=TRUE の場合は、条件付き書式が反映された実際の表示色(DisplayFormat)を使用します。条件付き書式の色が正しく反映されるのは、関数のあるシートがアクティブな状態で再計算された場合のみです。
  • 注意: 条件付き書式=TRUE のとき、別のシート(または別のブック)がアクティブな状態で再計算されると(そのシートの編集、F9、全再計算のいずれでも)、条件付き書式の色を正しく読み取れず誤った値になります。これらの関数は揮発性のため、別のシートを編集するだけで再計算され、実際によく発生します。
  • 注意: こうして生じた誤った値は、関数のシートに戻ってもそのまま残ります。関数のシートがアクティブな状態で F9 を押すと正しい値に戻ります。
  • 注意: 条件付き書式の色を基準に集計する必要がある場合は、できるだけ条件付き書式の条件そのもので集計することをお勧めします(例: =COUNTIF(A1:A10,">5"))。
  • セル参照を受け取るマクロ型関数のため、Excel は揮発性(volatile)関数として扱い、ブック内のどこかで値が変わると再計算されます。一方、セルの色や条件付き書式のルールを変更しただけでは再計算されないため F9 が必要で、マルチスレッド再計算からも除外されます。
  • 第3引数(文字色)までを使った既存の数式はそのまま互換です。ただし条件付き書式の色に依存していた既存の数式は、第4引数に TRUE を指定しないと以前と同じ結果になりません。
  • 結合セルは 1 個として数えます(結合範囲の先頭セルのみ検査)。
  • 対応: Excel 2010+。すべての Excel バージョンで COUNTIFCOLOR の名前のまま登録されます。