小技集

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ



2024年11月18日【ID:0】

【Excel】いずれかの条件を満たすデータの集計

※IT予備メンバーに加入して連携すると、
一部の広告が非表示になります。


以下の売上管理表を元に、商品名が「A」もしくは「B」などと、複数指定した商品の売り上げを合計する方法について解説していきます。
こちらでは、2つの商品を指定して、その2つの商品の売り上げの合計を求めていきます。

※集計の対象行を色付けしています。


スピルを使わない場合

まずは、スピルを使わずに求める方法について解説していきます。

スピルを使わない場合は、SUMIF関数を使います。
SUMIF関数では、指定した条件を満たしたデータのみを集計することができます。
この関数の使い方は、以下になります。

=SUMIF(範囲, 検索条件,  [合計範囲])
// 範囲:対象を絞り込むためのデータ範囲
// 検索条件:「範囲」に指定したデータ範囲から絞り込む条件
// [合計範囲]:合計を求めたいデータ範囲(省略時は「範囲」と同じになる)

実際に、以下の表のセルF3の値と一致する商品名の売上を求める場合、以下のような数式になります。

=SUMIF(C:C,F3,D:D)

後は、同様にもう片方(セルF4)の商品名の売上を求め、以下のように加算することで、複数の商品の売り上げの合計を求めることができます。

=SUMIF(C:C,F3,D:D)+SUMIF(C:C,F4,D:D)

複数条件を満たすデータのみを集計するSUMIFS関数というものもありますが、この関数の場合は、「いずれかを満たす」という条件を指定することができません。
そのため、上記のように、SUMIF関数で1つ1つの合計を求めてから加算しています。

この方法の注意点としては、加算するそれぞれの合計の中に重複したデータが含まれていた場合は、正しく集計できないという点です。

例えば、以下のような表で、「「商品1」が「A」もしくは「商品2」が「B」」の商品を集計する場合、加算する方法では正しく求められない可能性があります。
以下の例の場合は、赤色の枠で囲まれたデータが重複して加算されてしまっています。

=SUMIF(C:C,H3,E:E)+SUMIF(D:D,H4,E:E)

そのため、データが重複する際は、重複分を引く数式を更に加える必要があります。
(こちらでは解説を省略)

上記の注意点を踏まえると、スピルを活用した次の方法がオススメになります。


スピルを使う場合

次に、スピルを使って求める方法について解説していきます。

スピルが使える環境(Excel2021以降、もしくは365)では、FILTER関数が活用できます。
FILTER関数では、指定した条件を満たしたデータのみを抽出することができます。
この関数の使い方は、以下になります。

=FILTER(配列, 含む, [空の場合])
// 配列:抽出対象のデータ範囲
// 含む:抽出する条件
// [空の場合]:抽出対象が存在しない時に表示する値(省略時はエラーになる)

実際に、以下の表のセルF3とF4の値を含む商品名の売上を抽出する場合、以下のような数式になります。

=FILTER(D:D,(C:C=F3)+(C:C=F4))
// 「または」という条件は、条件式を「+」で繋げる必要がある
// 「空の場合」は、こちらでは省略する

後は、この抽出された売上の合計を求めていきます。
その際は、以下のように、全体をSUM関数で囲むことで求めることができます。

=SUM(FILTER(D:D,(C:C=F3)+(C:C=F4)))

FILTER関数を活用することで、データが重複して抽出される心配がなくなります。
例えば、以下のような表で、「「商品1」が「A」もしくは「商品2」が「B」」の商品を集計する場合、以下のような数式で求めることができます。

=SUM(FILTER(E:E,(C:C=H3)+(D:D=H4)))

パソコンで開く場合は、記事の最後に「リンクコピー」があるためご活用ください。

※IT予備メンバーに加入して連携すると、
一部の広告が非表示になります。


メンバー募集 メンバー募集





リンクの共有はこちらから行えます。

  リンクコピー    X Facebook はてなブックマーク Pocket
トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ


- 人気の記事 -



- メンバー限定 [一覧] -



サイト累計閲覧数

7149900

有料動画講座
(買い切り)

Excel完全制覇


ちょっとした機能 便利ツール
【小技集】

【ExcelVBA】ダブルクリックで塗りつぶしとリセットを繰り返す

【Excel】複数行のデータを瞬時に1列にする方法

【Excel】数式で年齢を求める方法【2選】

【Excel】○○IF(S)関数で使える条件式

【Excel】基準日から指定した日数分の日付を表示

【Excel】分布を視覚化するには「ヒストグラム」

【ExcelVBA】項目名をクリックするだけで並べ替え

【ExcelVBA】タスク管理表で残タスク数をシート名に自動反映

【Excel】○○IFS関数を使ってOR条件で求める

【Excel】数式の法則性から間違いを見つける

【Excel】隣接したセルの書式を自動反映させない

【Excel】2行1データの表を1行1データに変換

【ExcelVBA】ダブルクリックで値を切り替える方法

【Excel】データ数に応じて自動で連番を振る方法

【ExcelVBA】結合されているセルを色付け

【Excel】グラフの軸の「データのない日付」を非表示にする

【Excel】数式を劇的に読みやすくする方法

【Excel】セル内の特定の文字の数を求める

【Excel】横方向の並べ替え

【Excel】複数シートの表から検索して値を抽出

【Excel】テンプレートは便利

【Windows】読めない漢字を入力する

【Excel】2重の円グラフ(詳細と小計)を作成

【Excel】未割当の行を自動で色付け

【Excel】時間や時給からの給料を正しく計算





一覧ページへ

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ