Excelの書式・印刷 Excel一覧 色付き カウント 高度な書式と計算

【Excel】色付きセルの合計をSUMIF関数で計算する方法

Excelでデータを管理する際、色付きセルの合計を計算したい ことがあります。しかし、SUMIF関数ではセルの色を条件にして合計することはできません。そのため、「SUMIFを使った代替方法」や「VBAを活用したカスタム関数」 を使うことで、色付きセルの合計を求めることができます。

本記事では、SUMIF関数を使う方法、フィルター機能を活用する方法、VBAを使ったカスタム関数(UDF)で色付きセルの合計を求める方法 について解説します。

ExcelのSUMIF関数で色付きセルを合計できるか?

✅ 結論: SUMIF関数ではセルの色を条件にして合計することはできません
SUMIFはセルの「数値や文字列」を条件に合計を求める関数であり、セルの色 には対応していません。

SUMIF関数を使った色付きセルの合計を出す代替方法

SUMIF関数を使いたい場合は、色付きセルに特定の値(例えば「1」)を入力し、その値を条件にSUMIFを使う方法 があります。

手順
  1. 色付きセルの隣に「フラグ列」を作成
    • 例えば、B2:B10 に数値があり、色付きセルを合計したい場合、C2:C10 に「1」を入力。
  2. SUMIF関数を使用
    =SUMIF(C2:C10, 1, B2:B10)

    • C2:C10 → フラグ列
    • 1 → 色付きセルを表す値
    • B2:B10 → 合計対象の範囲

結果:
色付きセルの数値だけが合計されます。

📌 ポイント
手動で色付きセルに「1」を入力する必要がありますが、SUMIF関数を活用できるメリットがあります。

フィルター機能を使って色付きセルの合計を求める(VBAなし)

VBAを使わずに色付きセルの合計を求めたい場合は、「フィルター機能」を活用すると簡単に計算できます。

手順
  1. データ範囲を選択(例: A1:B100
  2. 「データ」タブ →「フィルター」
  3. フィルターのドロップダウンをクリック
  4. 「フィルターオプション」から「フィルターの色」を選択
  5. 特定の色を選ぶ
  6. フィルターで表示されたセルの合計を確認
    • Excelの「合計」セル(SUM関数) を使うと、フィルターされたデータの合計が計算される

結果:
選択した色付きセルの数値のみが合計されます。

VBAを使って色付きセルの合計を求めるカスタム関数(UDF)

SUMIF関数では色を判定できないため、VBAを使って「特定の色のセルだけを合計する関数」 を作成します。

色付きセルの合計を求めるVBA関数

Function SumColorCells(rng As Range, colorCell As Range) As Double

Dim cell As Range
Dim total As Double
total = 0

' 範囲内のセルをループ
For Each cell In rng

If cell.Interior.Color = colorCell.Interior.Color Then

total = total + cell.Value

End If

Next cell

SumColorCells = total

End Function

VBAの設定と実行方法
  1. VBAエディタを開く
    • Alt + F11 を押して VBAエディタ を開く
  2. 「挿入」→「モジュール」を選択
  3. 上記のVBAコードを貼り付け
  4. Excelに戻る
  5. 以下の数式を入力
    =SumColorCells(A2:A10, C1)

    • A2:A10 → 色付きセルの合計を求める範囲
    • C1 → 合計したい色を持つセル(基準の色)
  6. Enterキーを押すと結果が表示される

結果:
C1セルと同じ色のセルの数値が合計されます。

色付きセルの合計を求める方法の比較

方法メリットデメリット
SUMIF関数 + フラグ列SUMIFを活用できる色付きセルを手動で「1」と入力する必要がある
フィルターを使う(VBAなし)直感的で簡単手動操作が必要
VBAのカスタム関数(UDF)自動で色別に合計できるVBAの知識が必要

色付きセルの合計を求める際の注意点

条件付き書式で色付けされたセルはVBAではカウントできない
VBAの Interior.Color は手動で設定したセルの色しか取得できません。
条件付き書式で色付けされたセルの合計を求める場合、SUMIF関数を使うのが最適 です。

VBA関数は自動更新されない

  • F9 を押して再計算する必要がある

フィルター機能を使う場合はデータが変わると手動更新が必要

  • データが追加・削除されたらフィルターを再適用する

まとめ

Excelで色付きセルの合計を求める方法 には、3つの選択肢 があります。

📌 おすすめの使い分け

VBAを使わずに計算したいフィルター機能を使う
SUMIFを活用したいフラグ列を作成する方法を使う
色別に自動で合計を求めたいVBAのカスタム関数を使う

実際の活用例
方法使いどころ
SUMIF関数 + フラグ列数値を手動で「1」と入力できる場合
フィルター機能VBAを使いたくない場合
VBAのカスタム関数色別に自動で合計を出したい場合

-Excelの書式・印刷, Excel一覧, 色付き カウント, 高度な書式と計算