Excel関数 逆引き集 | 下位n件の合計 → SMALL+SUM

Excel
スポンサーリンク

概要

「下位n件の合計」を求めたいときは、範囲から最小値側のn個を取り出して合計します。Excelでは SMALL 関数で順位付きの小さい値を抽出し、それを SUM で合計するのが定番です。Microsoft 365なら動的配列を使って一気に合計でき、従来版でも複数のSMALLを足し合わせることで同じ結果が得られます。


基本の使い方

書式

=SUM(SMALL(範囲, SEQUENCE(n)))
  • SMALL(範囲, k) は範囲の中で「小さい順にk番目の値」を返します。
  • SEQUENCE(n) は1からnまでの数列を返し、複数順位を同時に指定できます(Microsoft 365)。

最小例(従来版Excel)

下位3件の合計:

=SMALL(B2:B100,1) + SMALL(B2:B100,2) + SMALL(B2:B100,3)

動的配列がない環境でも確実に動作します。


具体例

売上の下位3件合計

=SUM(SMALL(B2:B200, SEQUENCE(3)))

範囲B2:B200から最小値、2番目に小さい値、3番目に小さい値を取り出し合計します。

H1セルで件数を指定して柔軟に

=SUM(SMALL(B2:B200, SEQUENCE($H$1)))

H1に「5」と入力すれば下位5件の合計になります。

カテゴリ別の下位n件合計(条件付き)

カテゴリがA列、金額がB列、現在行A2のカテゴリに属する下位3件の合計:

=SUM(SMALL(IF($A$2:$A$200=A2, $B$2:$B$200), SEQUENCE(3)))

古いExcelでは配列数式としてCtrl+Shift+Enterで確定します。


応用テンプレート

下位n件の値を一覧表示

=SMALL(B2:B200, SEQUENCE(3))

最小値から順に3件を縦方向に表示できます。

下位n件の合計と平均を同時に出す

合計:

=SUM(SMALL(B2:B200, SEQUENCE(3)))

平均:

=AVERAGE(SMALL(B2:B200, SEQUENCE(3)))

下位n件を条件付きで抽出して合計

日付A列、金額B列、A2と同じ月の下位3件:

=SUM(SMALL(IF(TEXT($A$2:$A$200,"yyyy-mm")=TEXT(A2,"yyyy-mm"), $B$2:$B$200), SEQUENCE(3)))

よくあるつまずきと対策

重複値がある場合

SMALLは値ベースで抽出するため、同じ値が複数あるとその値が複数回カウントされます。意図と異なる場合はUNIQUEで一意化してから使う方法もあります。

=SUM(SMALL(UNIQUE(B2:B200), SEQUENCE(3)))

範囲にエラー値が含まれる

エラーがあるとSMALLは計算できません。IFERRORで保護するか、数値のみを抽出する条件を加えます。

=SUM(SMALL(IF(ISNUMBER($B$2:$B$200), $B$2:$B$200), SEQUENCE(3)))

nが範囲の件数を超える

存在しない順位を指定するとエラーになります。MINで上限を件数に合わせると安全です。

=SUM(SMALL(B2:B200, SEQUENCE(MIN($H$1, COUNT(B2:B200)))))

例題

問題1: 列B(B2:B200)の下位3件の合計をC2に表示

解答例:

=SUM(SMALL(B2:B200, SEQUENCE(3)))

問題2: H1で指定したn件の下位合計をC2に表示

解答例:

=SUM(SMALL(B2:B200, SEQUENCE($H$1)))

問題3: カテゴリA列、金額B列。現在行(A2)のカテゴリに属する下位3件の合計をC2に表示

解答例:

=SUM(SMALL(IF($A$2:$A$200=A2, $B$2:$B$200), SEQUENCE(3)))

問題4: 日付A列、金額B列。A2と同じ月の下位3件合計をC2に表示

解答例:

=SUM(SMALL(IF(TEXT($A$2:$A$200,"yyyy-mm")=TEXT(A2,"yyyy-mm"), $B$2:$B$200), SEQUENCE(3)))

問題5: 下位3値の一覧(縦)とその合計をD列に表示(Microsoft 365)

一覧:

=SMALL(B2:B200, SEQUENCE(3))

合計:

=SUM(SMALL(B2:B200, SEQUENCE(3)))

まとめ

SMALL+SUM は「下位n件の合計」を最短で計算できる定番の組み合わせです。Microsoft 365ならSEQUENCEで一括抽出、従来版なら複数のSMALLを足し合わせる形で対応します。条件付きの下位抽出、重複値の扱い、nの安全化、エラー除去を押さえれば、実務でも堅牢に運用できます。

タイトルとURLをコピーしました