VBA を使用して特定のセルの色を持つセルの数をカウントする
概要
[Microsoft Excel 数式 ] タブの [ その他の関数>統計 ] カテゴリには、特定の条件を満たす範囲内のセルの数をカウントする COUNTIF という関数があることがわかっています。 その関数の条件は、テキストまたは数値に制限されます。 ただし、VBA を使用すると、セルの色など、他の条件を持つセルの数をカウントする関数を作成できます。
詳細情報
VBA を使用すると、ユーザー定義関数 (UDF) を作成してアドイン ファイルに保存し、他のブックで使用したり、他のコンピューターに転送したりできます。
UDF を作成する方法
セルの色をカウントする UDF を作成する手順を次に示します。
Microsoft Excel を開き、Alt キーを押しながら F11 キーを押して Visual Basic エディター (VBE) ウィンドウを表示します。
[ 挿入 ] メニューの [ モジュール ] を選択してモジュールを作成します。 次に、次のスクリプトを入力します。
Function CountCcolor(range_data As range, criteria As range) As Long Dim datax As range Dim xcolor As Long xcolor = criteria.Interior.ColorIndex For Each datax In range_data If datax.Interior.ColorIndex = xcolor Then CountCcolor = CountCcolor + 1 End If Next datax End Function
Excel に戻るには、VBE ウィンドウを閉じます。
UDF をテストするには、さまざまな色のセルの列を含むサンプル データを作成します。
セル D3 で、関数を書き込みます。
=CountCcolor(range_data,criteria)
"range_data" 引数で、セル C2 から C51 を選択します。
"criteria" 引数で、セル F1 を選択します。
[Enter] キーを押します。 セル F2 の結果は 6 です。 つまり、青で網掛けされたセルの数は 6 です。
他の色を使用してテストできます。 [ホーム>塗りつぶしの色] を使用して、データから任意の色を使用してセル F1 の色を変更します。
関数を別のブックまたは別のコンピューターで使用できるように、UDF を zip にすることもできます。 そのために、以下の手順に従ってください。
手順 1: ブックを保存する
a. [ファイル]、[名前を付けて保存] の順に選択します。 (必要に応じて [参照 ] を選択します)。
b. 形式として Excel Add-In (.xlam) を選択し、ファイルに CountCcolor などの名前を付けます。
注:
Add-In ファイルは、任意の場所に保存できます。 ただし、Excel プログラム内のAdd-Inとして一覧表示するには、既定の場所に保存します。 Windows 7 では、任意のバージョンの Microsoft Excel の既定の場所: C:\Users\RADDINI\AppData\Roaming\Microsoft\AddIns
手順 2: アドインをインストールする
a. アドインをインストールするコンピューターで Microsoft Excel を開きます。
b. Excel 2013 以降の Excel アドインを [開発] タブで選択して、[Add-Ins] ダイアログ ボックスを開きます。(Excel 2010 のアドイン)。
c. [アドイン] ダイアログ ボックス で 、[参照] を選択 します。
d. Add-In ファイルが保存されているファイルの場所 (USB ドライブやクラウドベースのフォルダーなど) に移動します。 ファイルを選択し、[ 開く] を選択します。
e. [Add-Ins] ダイアログ ボックスで、[アドイン] チェック ボックスがオフになっていることを確認します。 次に [OK] を選びます。
Count Cell Color UDF がインストールされ、使用できるようになります。 ワークシート内の任意のセルにカーソルを置き、次のように入力することで、いつでもこの関数にアクセスできます。
=CountCcolor(range_data,criteria)
Community ソリューション コンテンツの免責事項
MICROSOFT Corporation および/またはそのそれぞれのサプライヤーは、ここに含まれる情報および関連グラフィックスの適合性、信頼性、または正確性について何も表現しません。 このような情報および関連するグラフィックスはすべて、いかなる種類の保証も伴わずに "現状のまま" 提供されます。 MICROSOFT および/またはそのそれぞれのサプライヤーは、この情報および関連グラフィックスに関するすべての保証と条件を放棄します。これには、商品性、特定の目的への適合性、作業的な努力、所有権、非侵害に関するすべての暗黙の保証と条件が含まれます。 お客様は、いかなる場合も、MICROSOFT およびそのサプライヤーが、直接的、間接的、非法的、付随的、付随的、付随的、派生的な損害、または使用の損失、データまたは利益に対する損害を含む一切の損害に対して責任を負いません。これらに限定されません。これには、ここに含まれる情報および関連グラフィックスの使用または使用不能に関連するいかなる方法でも発生します。 MICROSOFT またはそのサプライヤーのいずれかが損害の可能性を知らされた場合でも、契約、TORT、非責任、厳格な責任に基づくかどうか。