※当サイトはアフィリエイト広告を利用しています。
Excelで色付きセル(塗りつぶしたセル)をカウントすることができたら、「ガンチャートから工数を自動計算する」といったようなことができるので便利です。
Excelには色付きセルをカウントする関数はありませんが、ユーザー定義関数を作れば簡単にカウントできるようになります。
そこで今回は、Excelで色付きセルをカウントする方法をご紹介します。
STEP1)ユーザー定義関数を作る
Excelファイルを開き、[Alt]+[F11]でVBEを起動します。VBEは「開発」タブの「Visual Basic」をクリックでも起動しますが、ショートカットキーを使う方が簡単なので覚えておきましょう。
VBEを起動したら、「挿入」メニューをクリックして「標準モジュール」を選択し、立ち上がったウィンドウに以下のコードを入力します。
Function CountColorA(Rng As Range) As Long
Dim myRng As Range
Dim Col_cnt As Long
Application.Volatile
Col_cnt = 0
For Each myRng In Rng
If myRng.Interior.ColorIndex > 0 Then
Col_cnt = Col_cnt + 1
End If
Next myRng
CountColorA = Col_cnt
End Function
参考:
塗りつぶし色の付いたセルを数える。[Excel] Day After Day
標準モジュールに最初から入力されている「Option Explicit」は削除しちゃってOKです。
STEP2)数を表示したいセルに数式を入力する
VBEを最小化してExcelの操作画面に戻りましょう。
カウントを表示したいセルを選択し、数式「=CountColorA(対象範囲)」を入力します。「対象範囲」には、カウントするセル範囲を入力してください。
対象範囲がA1からJ1であれば、「=CountColorA(A1:J1)」とします。
色付きセルの数を変更した場合は、[F9]を押せばカウントが更新されます。
上記画像の例で言うと、赤いセルを7個から4個に変えた場合、それだけではN1は「7」のままですが、[F9]を押せば「4」になります。
うまく更新されない場合は、数式のうしろに「+NOW( )*0」を付け、「=CountColorA(対象範囲)+NOW( )*0」としてから[F9]を押してみてください。
STEP3)マクロ有効形式で保存する
マクロ(ユーザー定義関数)を使っているので、マクロ有効形式でファイルを保存しましょう。
保存する際、ファイル形式のリストから「Excelマクロ有効ブック(*.xlsm)」を選択してください。
おわりに
VBEの標準モジュールにコードを入力し、カウントを表示したいセルに数式を入力すれば、それだけで色付きセルがカウントされるようになります。作業時間的には1~2分くらいです。
色付きセルをカウントできれば、最初に述べた通り、ガンチャートから工数を導き出すことなども可能になります。是非いろんな場面で活用してみてください。
以上、Excelで色付きセルをカウントする方法でした。