条件に基づいて最小または下位Nの値を合計する (Excel)
Author: Xiaoyang Last Modified: 2025-05-23
以前のチュートリアルでは、 データ範囲内の最小のn個の値を合計する方法について説明しました。この記事では、さらに高度な操作を行います – Excelで1つまたは複数の条件に基づいて最小のn個の値を合計します。
条件に基づいて最小または下位Nの値を合計する (Excel)
以下のスクリーンショットに示すように、データ範囲があると仮定します。ここで、製品「Apple」の最小の3つの注文を合計したいと思います。
Excelで条件付きで範囲内の下位n個の値を合計するには、SUM、SMALL、およびIF関数を使用して配列数式を作成できます。一般的な構文は次のとおりです:
{=SUM(SMALL(IF(range=criteria,values),{1,2,N}))}
配列数式のため、Ctrl + Shift + Enterキーを同時に押す必要があります。
配列数式のため、Ctrl + Shift + Enterキーを同時に押す必要があります。
- range=criteria: 特定の条件に一致させるセルの範囲;
- values: 合計したい下位n個の値を含むリスト;
- N: N番目の下位の値。
上記の問題を解決するために、次の配列数式を空白のセルに適用してください:
=SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))
そして、正しい結果を得るためにCtrl + Shift + Enterキーを同時に押してください。以下のように表示されます:
数式の説明:
=SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))
- IF(($A$2:$A$14=D2), $B$2:$B$14): 範囲A2:A14の製品が「Apple」と等しい場合、注文リスト(B2:B14)から相対的な数値を返します。「Apple」でない場合はFALSEが表示されます。結果は次のようになります: {800;FALSE;FALSE;FALSE;1000;230;FALSE;FALSE;1600;FALSE;900;FALSE;500}。
- SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}): このSMALL関数はFALSE値を無視し、配列内の下位3つの値を返します。したがって、結果は次のようになります: {230,500,800}。
- SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))=SUM({230,500,800}): 最後に、SUM関数は配列内の数値を合計して結果を得ます: 1530。
ヒント: 2つ以上の条件に対処する:
2つ以上の条件に基づいて下位n個の値を合計する必要がある場合、*文字を使用してIF関数内で他の範囲と条件を追加するだけです。次のようにします:
{=SUM(SMALL(IF((range1=criteria1)*(range2=criteria2) *(range3=criteria3)…,values),{1,2,N}))}
配列数式のため、Ctrl + Shift + Enterキーを同時に押す必要があります。
配列数式のため、Ctrl + Shift + Enterキーを同時に押す必要があります。
- Range1=criteria1: 最初の条件に一致させる最初のセル範囲;
- Range2=criteria2: 2番目の条件に一致させる2番目のセル範囲;
- Range3=criteria3: 3番目の条件に一致させる3番目のセル範囲;
- values: 合計したい下位n個の値を含むリスト;
- N: N番目の下位の値。
たとえば、Kerryが販売した製品「Apple」の下位3つの注文を合計したい場合、次の数式を適用してください:
=SUM(SMALL(IF(($A$2:$A$14=E2)*($B$2:$B$14=F2), $C$2:$C$14),{1,2,3}))
そして、必要な結果を得るためにCtrl + Shift + Enterキーを同時に押してください:
関連する関数:
- SUM:
- SUM関数は値を加算します。個々の値、セル参照、範囲、またはこれらすべての組み合わせを加算できます。
- SMALL:
- ExcelのSMALL関数は、昇順で並べ替えた際の位置に基づいて数値を返します。
- IF:
- IF関数は特定の条件をテストし、TRUEまたはFALSEに対応する値を返します。
その他の記事:
- 最小または下位Nの値を合計する
- Excelでは、SUM関数を使用してセル範囲を簡単に合計できます。時々、下のスクリーンショットに示すように、データ範囲内の最小または下位3、5、またはn個の数値を合計する必要があるかもしれません。このような場合、SUMPRODUCTとSMALL関数を使用してこの問題を解決できます。
- Excelでの請求額の年齢別小計
- 下のスクリーンショットに示すように、年齢に基づいて請求額を合計することはExcelでの一般的なタスクです。このチュートリアルでは、通常のSUMIF関数を使用して請求額を年齢別に小計する方法を示します。
- エラーを無視してすべての数値セルを合計する
- エラー値を含む数値範囲を合計する場合、通常のSUM関数は正しく動作しません。数値のみを合計し、エラー値をスキップするには、AGGREGATE関数またはSUMとIFERROR関数を使用できます。
最高のOffice生産性ツール
Kutools for Excel - あなたを群衆から際立たせるツール
🤖 | Kutools AI アシスタント: 次の要素に基づいてデータ分析を革新:インテリジェント実行 | コード生成 | カスタム数式の作成 | データの分析とチャートの生成 | Kutools 拡張機能の呼び出し… |
人気の機能:重複の検索、ハイライト、または識別 | 空白行の削除 | データを失うことなく列やセルを結合 | 数式なしで丸める ... | |
スーパーフィルター:複数条件 | 複数値 | 複数シート間 | ファジーマッチ... | |
高度なドロップダウンリスト:簡単なドロップダウンリスト | 依存するドロップダウンリスト | 複数選択可能なドロップダウンリスト... | |
列マネージャー:特定の数の列を追加 | 列の移動 | 非表示列の可視性ステータスの切り替え | 列を比較して同じおよび異なるセルを選択 ... | |
注目機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブックとシートの管理 | オートテキスト ライブラリ (Auto Text) | 日付ピッカー | データの統合 | セルの暗号化/復号化 | リストによるメール送信 | スーパーフィルター | 特殊フィルタ(太字/斜体/取り消し線のフィルタリング...) ... | |
トップ15のツールセット: 12 のテキストツール(テキストの追加、特定の文字を削除 ...) | 50 以上 のグラフタイプ(ガントチャート ...) | 40 以上の実用的な数式(誕生日に基づいて年齢を計算 ...) | 19 の挿入ツール(QRコードの挿入、パスからの画像挿入 ...) | 12 の変換ツール(単語に変換する、通貨変換 ...) | 7 つの結合と分割ツール(高度な行のマージ、Excelセルの分割 ...) | ... さらに |
Kutools for Excelは300以上の機能を誇り、必要なものがワンクリックで手に入ります...
Office Tab - Microsoft Office(Excel含む)でのタブ形式の閲覧と編集を有効にする
- 数十の開いている文書間を1秒で切り替え!
- 毎日数百回のマウスクリックを減らし、マウス手にさよならを告げる。
- 複数の文書を閲覧・編集する際に、生産性が50%向上します。
- Chrome、Edge、Firefoxのように、Office(Excel含む)に効率的なタブをもたらします。