office   選択範囲内の色つきセルの
合計を求めるユーザー定義関数


  
要VBA/サンプル有
TOPExcel/Word/PowerPoint
○ポイントは選択範囲の取得とループ
ワークシート関数に無いけど、あれば以外と便利な色つきセルの合計。ここでは、ユーザー定義関数にして、カラーインデックス別の合計が出せるようにしていますが、もちろん、デフォルト以外の色は全て合計する関数に変えることも可能です。

(1) 標準モジュールにユーザー定義関数を作る。
  コード例は下記


(2) ワークシートの適当な位置に
  =COLORSUM(データ範囲,カラーインデックス値)
  のように記入する。

(3) 返値が表示される。

○こんな時に使える
・セル内のデータを人間がチェックするような作業を行った後処理。

○応用またはその他の方法
EXCEL2000の場合はこちら
選択範囲内の色つきフォントの合計を求めるユーザー定義関数
・デフォルト色以外のセルの合計を求める場合は、上記コード例の
 If Cells(ii, i).Interior.ColorIndex = COLORINDX Then
 の部分を、
 If Cells(ii, i).Interior.ColorIndex > 0 Then
 のように変更します。

○サンプル
サンプルファイルはこちら(要解凍) 15KB

○注意
このユーザー定義関数は、セルの色を変更しても再計算されません。
このユーザー定義関数は、選択範囲が広くなると計算が遅くなります。