この記事では、定義された色を持つ範囲内のセルの数値の合計を計算するカスタム関数を作成します。

この例では、サンプルデータは営業チームのデータで構成されています。販売チームのデータには、販売されたアイテムの数に関連する詳細が含まれています。グレー、レッド、グリーンの3色展開の商品関連情報を掲載しています。商品の色ごとに販売された商品の合計を求めます。

ArrowRaw

色で合計を計算するために、カスタム関数「SumByColor」を作成しました。この関数は、2つの範囲パラメーターを入力として受け取ります。最初の範囲パラメーターはセルの内部色を定義し、2番目の範囲パラメーターはサンプル範囲を定義します。

ArrowOutput

コードの説明

Application.Volatileが使用されるのは、ワークブックでセル値が変更されるたびに再計算されるためです。

DefinedColorRange.Interior.ColorIndex上記のコードは、定義された範囲の内部色を取得するために使用されます。

コードについては以下に従ってください

Option Explicit

Function SumByColor(DefinedColorRange As Range, SumRange As Range)

Application.Volatile

'Declaring variables

Dim ICol As Integer

Dim GCell As Range

'Getting the interior color of the cell

ICol = DefinedColorRange.Interior.ColorIndex

'Looping through the defined range

For Each GCell In SumRange



If ICol = GCell.Interior.ColorIndex Then

'Getting the sum of matching colored cell

SumByColor = SumByColor + GCell.Value

End If

Next GCell

End Function

このブログが気に入ったら、FacebookやFacebookで友達と共有してください。

皆様からのご意見をお待ちしております。私たちの仕事を改善し、あなたのために改善する方法をお知らせください。 [email protected]までご連絡ください