【SMALL関数】使い方と解説 ※同順位の際の注意点

本記事では、ExcelのSMALL関数について解説しました。SMALL関数は、数値データの中から指定された順位に対応する値を返すことができます。データ解析を効率的に行うために、SMALL関数の使い方をマスターしましょう。

はじめに

本記事では、LARGE関数に関して、取り上げます。
Excel 2007以降のバージョンで使用可能です。ただし、Excel 2003以前のバージョンでは使用できません。

SMALL関数は、小さい方から数えた順位の値を返すことができ、多くの場合、ランキングや統計処理に利用されます。
記事『【LARGE関数】使い方と解説 ※同順位の際の注意点』でLARGE関数を取り上げましたが、SMALL関数はLARGE関数と逆の意味になります。

【LARGE関数】使い方と解説 ※同順位の際の注意点

本記事では、ExcelのLARGE関数について解説しました。LARGE関数は、数値データの中から指定された順位に対応する値を返すことができます。データ解析を効率的に行うために…



Excelなどの表計算ソフトウェアでデータ処理を行う際には、SMALL関数を上手に活用することで、より効率的にデータ解析を行うことができます。
具体的には、「ワースト3」なとを求めるとき等に活用します。

SMALL関数に関して

SMALL関数の機能

説明

指定されたデータの中で、k 番目に小さなデータを返します。 この関数を使用して、データ セット内の特定の相対位置にある値を返します。

LARGE 関数 – Microsoft サポート


SMALL関数は、数値データの中から、小さい方から数えた順位の値を返すことができます。

SMALL関数の文法


=SMALL(<span data-color="#0693e3" style="background: linear-gradient(transparent 60%,rgba(6, 147, 227, 0.7) 0);" class="vk_highlighter">配列</span>,<span data-color="#f78da7" style="background: linear-gradient(transparent 60%,rgba(247, 141, 167, 0.7) 0);" class="vk_highlighter">順位</span>) 
Code language: HTML, XML (xml)

 

配列から、小さい方から数えた順位の値を返します。

Excelの[関数の引数]ダイアログの設定から、SMALL関数の文法は知ることができます。
関数を使用する際には、Excelの[関数の引数]ダイアログに沿って進めると、エラーが発生しづらいです。

SMALL関数の文法(型と引数)

引数

なお、下記は、Microsoft社公式の『SMALL 関数 – Microsoft サポート』よりデータ分析ドットコムが改変したものです。

  • 配列:必ず指定。 対象データが入力されているセル範囲または配列を指定
  • 順位:必ず指定。小さい方から数えた順位を数値で指定。

小さい方から数えた順位を指定する点は注意してください。
SMALL関数の名前は、「小さい方から数えた順位を指定」という“SMALL(=小さい)”から由来していると考えております。

つまり、指定されたデータの中から、指定された順位に対応する値を抽出します。

SMALL関数の使用例

「同順位の値が存在しないケース」と同順位の値が存在するケース」の2つの使用例を確認してみます。

同順位の値が存在しないケース

次のサンプルデータのように、
A1からA10までのセルに数値データが格納されている場合に、3番目に小さい値を求める場合には、以下のようにSMALL関数を使います。

同順位の値が存在しないサンプルデータになります。

セル番地
A110
A28
A315
A46
A520
A67
A713
A89
A914
A1011

=SMALL(<span data-color="#0693e3" style="background: linear-gradient(transparent 60%,rgba(6, 147, 227, 0.7) 0);" class="vk_highlighter">A1:A10</span>,<span data-color="#f78da7" style="background: linear-gradient(transparent 60%,rgba(247, 141, 167, 0.7) 0);" class="vk_highlighter">3</span>) 
Code language: HTML, XML (xml)


=SMALL(A1:A10,3)という関数を使用すると、A1からA10の中で3番目に小さい値を取得できます。

つまり、8が返されます。

同順位の値が存在するケース

1からA6までのセルに数値データが格納されている場合に、3番目に小さい値を求める場合には、以下のようにSMALL関数を使います。

同順位の値が存在するサンプルデータになります。

セル番地
A110
A220
A330
A430
A540

式1: =SMALL(<span data-color="#0693e3" style="background: linear-gradient(transparent 60%,rgba(6, 147, 227, 0.7) 0);" class="vk_highlighter">A1:A10</span>,<span data-color="#f78da7" style="background: linear-gradient(transparent 60%,rgba(247, 141, 167, 0.7) 0);" class="vk_highlighter">1</span>) -> 10Code language: HTML, XML (xml)

式2: =SMALL(<span data-color="#0693e3" style="background: linear-gradient(transparent 60%,rgba(6, 147, 227, 0.7) 0);" class="vk_highlighter">A1:A10</span>,<span data-color="#f78da7" style="background: linear-gradient(transparent 60%,rgba(247, 141, 167, 0.7) 0);" class="vk_highlighter">2</span>) -> 20Code language: HTML, XML (xml)

式3: =SMALL(<span data-color="#0693e3" style="background: linear-gradient(transparent 60%,rgba(6, 147, 227, 0.7) 0);" class="vk_highlighter">A1:A10</span>,<span data-color="#f78da7" style="background: linear-gradient(transparent 60%,rgba(247, 141, 167, 0.7) 0);" class="vk_highlighter">3</span>) -> 30
Code language: HTML, XML (xml)
式4: =SMALL(<span data-color="#0693e3" style="background: linear-gradient(transparent 60%,rgba(6, 147, 227, 0.7) 0);" class="vk_highlighter">A1:A10</span>,<span data-color="#f78da7" style="background: linear-gradient(transparent 60%,rgba(247, 141, 167, 0.7) 0);" class="vk_highlighter">4</span>) -> 30
Code language: HTML, XML (xml)
式5: =SMALL(<span data-color="#0693e3" style="background: linear-gradient(transparent 60%,rgba(6, 147, 227, 0.7) 0);" class="vk_highlighter">A1:A10</span>,<span data-color="#f78da7" style="background: linear-gradient(transparent 60%,rgba(247, 141, 167, 0.7) 0);" class="vk_highlighter">5</span>) -> 40
Code language: HTML, XML (xml)


つまり、【式4】と【式5】は関数式は異なりますが、同順位のため、【式4】【式5】ともに、同じ値 30が返されます。

したがって、同じ値を含むデータにおいて、SMALL関数を使用する際には、注意が必要です。
SMALL関数を使用して、4番目に小さい値を取得しようとすると、30が返されてしまいます。

しかしながら、
30は、「3番目に小さい値」が正しいでしょう。

このように、同じ値を含むデータにおいては、SMALL関数を使用する際には、注意が必要です。
同順位が存在する場合は、他の関数と組み合わせて使用することを推奨します。

最後に

本記事では、ExcelのSMALL関数について解説しました。

SMALL関数は、数値データの中から指定された順位に対応する値を返すことができます。
また、同じデータで同じ順位が複数存在する場合でも対応可能ですが、注意点がありました。

同順位が存在する場合は、他の関数と組み合わせて使用することを推奨します。

参考記事

本記事の読みやすさをさらに向上させるために、Excel関数に関する原理原則についてまとめた記事を紹介します。

Excel関数を学ぶ前に

Excelほど、馴染みがあり、広く浸透しているツールもないでしょう。 さらに、Excel関数はExcel作業を便利するパッケージであり、習得することで、大きな進歩につながりま…

Excel関数の種類は大まかに知っておこう

冷静に、スムーズに仕事ができるため、Excel関数の種類を大まかに知っておくことが大切です。 Excel 2019では、Excel関数が全486関数もありますが、Excel機能を上手に活用…

Excel関数にはそれぞれ構文がある

Excel関数には構文があります。それが、引数と戻り値です。構文に沿えばいいだけです。言わば、数学の公式のようなものです。理論を知らなくても、公式に当てはめれば答え…

Excel関数の引数とは

Excelの引数は、料理を完成させるための材料のようなものです。しかも、材料に種類があります。その種類を理解すると、Excel関数を上手く使いこなせるようになります。

Excelの検索ダイアログから、関数を探す

Excelの検索ダイアログに使えば、目的の関数を発見しやすくなります。WEB検索する前に、Excel関数の検索ダイアログを使ってみましょう。