- ベストアンサー
色付セルの集計(エクセル)
エクセルで、セルに色を付け、 そのセルだけの合計を出すような 数式はあるのでしょうか? 宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Excelの基本的な機能ではできないと思います。ユーザー定義関数を作ってみました。 =Total_Color(集計範囲,色を指定するセル1,色を指定するセル2・・・) のように使います。集計範囲は矩形範囲のみの対応です。 例えば、集計範囲がA1:C10で、A2の色とB3の色のどちらかと同じ色のセルの合計なら =Total_Color(A1:C10,A2,B3) とします。 また、色の付いたセルを全て集計する場合は =Total_Color(集計範囲) とします。 色を指定するセルに『色を付けていないセル』を指定すれば色の付いていないセルを合計します。 ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュールで標準モジュールを挿入し、そこに下記コードを貼り付けます。 Public Function Total_Color(rgArea As Range, ParamArray rgColor()) Dim rg As Range 'セル Dim chk As Integer '色の照合チェック Dim TTL As Double '合計値 If UBound(rgColor) = -1 Then '集計する色を指定していない場合は、色が付いたセルをすべて集計する For Each rg In rgArea If rg.Interior.ColorIndex <> xlNone Then TTL = TTL + Val(rg.Value) End If Next Total_Color = TTL Else '色の指定がある場合 For Each rg In rgArea For chk = LBound(rgColor) To UBound(rgColor) '指定した色(複数)と一致したら合計する If rgColor(chk).Interior.ColorIndex = rg.Interior.ColorIndex Then TTL = TTL + Val(rg.Value) Exit For End If Next Next Total_Color = TTL End If End Function
その他の回答 (1)
- hiromuy
- ベストアンサー率27% (103/370)
こんにちは。 エクセルの質問サイトに同様の質問がありますので、参考urlご覧下さい。
お礼
なるほど、関数を作らないとだめだったんですね。 教えていただいた通りやってみたところ、 上手く集計できました! 素晴らしいです! 丁寧なお答え、本当にありがとうございました。