条件に一致するデータの中で最大値と最小値を取得する(MAX,MIN,IF,MAXIFS,MINIFS)

条件に一致するデータの中で最大値と最小値を取得する方法です。最大値を取得する場合は MAX 関数と IF 関数、最小値を取得する場合は MIN 関数と IF 関数を使用します。また別の方法として MAXIFS 関数と MINIFS 関数を使用することもできます。ここでは Excel の関数である MAX 関数、 MIN 関数、 IF 関数、 MAXIFS 関数、 MINIFS 関数を使って条件に一致するデータの中で最大値と最小値を取得する方法について解説します。

(2021 年 03 月 13 日公開 / 2022 年 03 月 13 日更新)

条件に一致する最大値を取得する(MAX,IF)

最初に条件に一致するデータの中で最大値を取得する方法です。 MAX 関数と IF 関数を組みあわせて使用します。次のシートを見てください。

条件に一致する最大値を取得する(MAX,IF)(1)

売上リストに担当者と売上が記述されています。指定した担当者の売上の中で最大値を取得します。担当者の名前を F2 セルに入力し最大値を取得する F3 セルに次のように数式を入力しました。

=MAX(IF(B3:B13=F2,C3:C13,""))

条件に一致する最大値を取得する(MAX,IF)(2)

売上のデータの中で条件と一致するセルはそのまま、条件に一致しないセルは空のセルに変換した配列数式を作成し、 MAX 関数を使って最大値を取得します。

Ctrl+Shift+Enter キーを押すと F2 セルに指定した担当者の売上の中で最大の値が表示されます。

条件に一致する最大値を取得する(MAX,IF)(3)

F2 セルに入力されている担当者の名前を "遠藤" から "鈴木" に変更してみます。

条件に一致する最大値を取得する(MAX,IF)(4)

新しい条件に一致するデータの中で最大の値を取得して F3 セルに表示されます。

条件に一致する最大値を取得する(MAX,IF)(5)

指定した条件に一致する最大の値を取得することができました。

解説

今回はまず IF(B3:B13=F2,C3:C13,"") の部分で条件に一致するセルの売上データはそのままにして、条件に一致しない売上データは空のセルに変換しています。

実際にどのように変換されるのかを確認するため、列を 1 つ追加したあと D3:D13 セルを選択します。そして数式バーに次のように入力しました。

=IF(B3:B13=G2,C3:C13,"")

条件に一致する最大値を取得する(MAX,IF)(6)

Ctrl+Shift+Enter キーを押すと条件に一致したセルはそのままで、一致しないセルは空のセルに変換されます。

条件に一致する最大値を取得する(MAX,IF)(7)

このあとで MAX 関数を使い変換後のセル範囲を対象に最大値を取得することで、条件に一致したセルの中から最大値を取得しています。

今回使用した関数の解説は下記を参照されてください。

条件に一致する最小値を取得する(MIN,IF)

次に先ほどとは逆に条件に一致するデータの中で最小値を取得する方法です。 MIN 関数と IF 関数を組みあわせて使用します。次のシートを見てください。

条件に一致する最小値を取得する(MIN,IF)(1)

売上リストに担当者と売上が記述されています。指定した担当者の売上の中で最小値を取得します。担当者の名前を F2 セルに入力し最小値を取得する F3 セルに次のように数式を入力しました。

=MIN(IF(B3:B13=F2,C3:C13,""))

条件に一致する最小値を取得する(MIN,IF)(2)

売上のデータの中で条件と一致するセルはそのまま、条件に一致しないセルは空のセルに変換した配列数式を作成し、 MIX 関数を使って最小値を取得します。

Ctrl+Shift+Enter キーを押すと F2 セルに指定した担当者の売上の中で最小の値が表示されます。

条件に一致する最小値を取得する(MIN,IF)(3)

指定した条件に一致する最小の値を取得することができました。

最大値を取得したときに使用した MAX 関数を MIN 関数に変更しただけなので、詳細な解説は省略します。今回使用した関数の解説は下記を参照されてください。

条件に一致する最大値および最小値を取得する(MAXIFS,MINIFS)

先ほどは MAX 関数と IF 関数、および MIN 関数と IF 関数を組み合わせて条件に一致する最大値や最小値を取得しましたが、他に MAXIFS 関数および MINIFS 関数を使って取得することもできます。簡潔に記述できますが、 MAXIFS 関数及び MINIFS 関数は Excel 2019 以降しか利用できません。それ以前の Excel を利用されている場合は MAX 関数や MIN 関数を使った方法を利用されてください。

次のシートを見てください。

条件に一致する最大値および最小値を取得する(MAXIFS,MINIFS)(1)

売上リストに担当者と売上が記述されています。指定した担当者の売上の中で最大値を取得します。担当者の名前を F2 セルに入力し最大値を取得する F3 セルに次のように数式を入力しました。

=MAXIFS(C3:C13,B3:B13,F2)

条件に一致する最大値および最小値を取得する(MAXIFS,MINIFS)(2)

MAXIFS 関数では 1 番目の引数に指定したセル範囲の中で最大値を取得しますが、 2 番目の引数に指定した条件範囲の中で 3 番目の引数に指定した検索条件と一致した行にあるデータだけを対象とします。

Enter キーを押すと F2 セルに指定した担当者の売上の中で最大の値が表示されます。

条件に一致する最大値および最小値を取得する(MAXIFS,MINIFS)(3)

また最小値を取得する F4 セルに次のように数式を入力しました。

=MINIFS(C3:C13,B3:B13,F2)

条件に一致する最大値および最小値を取得する(MAXIFS,MINIFS)(4)

MINIFS 関数では 1 番目の引数に指定したセル範囲の中で再消費を取得しますが、 2 番目の引数に指定した条件範囲の中で 3 番目の引数に指定した検索条件と一致した行にあるデータだけを対象とします。

Enter キーを押すと F2 セルに指定した担当者の売上の中で最小の値が表示されます。

条件に一致する最大値および最小値を取得する(MAXIFS,MINIFS)(3)

指定した条件に一致する最大および最小の値を取得することができました。

今回使用した関数の解説は下記を参照されてください。

-- --

Excel の関数である MAX 関数、 MIN 関数、 IF 関数、 MAXIFS 関数、 MINIFS 関数を使って条件に一致するデータの中で最大値と最小値を取得する方法について解説しました。

( Written by Tatsuo Ikura )

広告
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。