【関数】特定条件に一致する数値の「最大値」を計算できる「MAXIFS」の使い方
AさんAさん

商品別や日別などの条件で最大値を集計したいですが、MAXだと限界あります。。
こうした場合の集計に役立つ関数はありますか?

森田森田

その場合は、関数のMAXIFSを活用すると良いですよ!
では、MAXIFSの使い方について解説していきますね。

Excelステップ講座

はじめに

この記事はMAXSUMIFSの使い方を把握していることが前提です。

参考記事

MAXSUMIFSの詳細は以下の記事をご参照ください。


○○別の「最大値」を集計する場合は「MAXIFS」が有効

実務では、データの特徴や傾向を把握するために、商品別や日別などの切り口で集計する機会は非常に多いもの。

こうした条件別の最大値を集計する際、商品名や日付などの条件に一致するレコードの数値データのみで最大値を計算すれば良いです。

頑張れば、次のようにMAXでも集計は可能です。

ただし、指定するセル数が多ければ多いほど、手作業は増え、誤ったセルを選択するリスクも増えてしまうため、この方法は非効率です。

こんな場合、関数のMAXIFSを使いましょう。
MAXIFSは「マックス・イフス」と読む。

MAXIFSを使うことで、条件に一致するレコードのみを対象とし、数値データの最大値を計算できます。

なお、MAXIFSExcel2019以降またはMicrosoft365のバージョンで使用可能です。

MAXIFSの構文

MAXIFSの構文は以下の通りです。

=MAXIFS(最大範囲,条件範囲1,条件1,[条件範囲2,条件2],…)
所定の条件または基準で指定したセル間の最大値を返します。

引数名 必須 データ型 説明
最大範囲 参照 最大値の計算対象のセル範囲を指定します。
条件範囲1 参照 「条件1」の検索対象のセル範囲を指定します。
条件1 すべて 「条件範囲1」内のどのセルを計算対象にするかの条件(値や単一セル)を指定します。
条件範囲2
※条件範囲3以降も同様
参照 「条件2」の検索対象のセル範囲を指定します。
条件2
※数値3以降も同様
すべて 「条件範囲2」内のどのセルを計算対象にするかの条件(値や単一セル)を指定します。

引数[条件範囲n,条件n]は条件の数に応じてセットで追加可能(最大126セット)。
引数「最大範囲」で指定した値のうち数値だけが計算対象となり、空白セル、論理値、文字列はすべて無視される。
※「0」は計算対象。

引数「最大範囲」で指定した値がすべて数値以外の場合、「0」が表示。
引数「条件n」の値が、引数「条件範囲n」で指定した値の中に存在しない場合、「0」が表示。
引数「最大範囲」と引数「条件範囲n」で指定するセル数は一致している必要あり(不一致の場合、エラー値「#VALUE!」が表示)。
引数「最大範囲」にエラー値が含まれる場合、そのエラー値が表示。

【参考】MAXIFSは「統計関数」

あくまで参考情報となりますが、MAXIFSはリボン「数式」タブの関数ライブラリの「統計」に分類されています。

実際にMAXIFSを活用する際は、以下で解説しているように直接入力で挿入していきましょう。

MAXIFSの使用結果イメージ

MAXIFSで条件別の最大値を集計したイメージは以下の通りです。

今回は商品別で「金額」列の最大値を計算しました。

ポイントは、引数の「最大範囲」と「条件範囲1」はそれぞれ同じ範囲で固定すること。

そして、引数「条件1」は1行ごとにスライドさせることです。

こうすることで、ベースとなる数式を以降のセルへ使い回せるわけですね。

参考記事

参照形式(絶対参照/相対参照)の詳細は以下の記事をご参照ください。

MAXIFSの数式の挿入手順

上記の結果を得るための手順は以下の通りです。

  1. 関数を挿入するセルを選択
  2. =maxi」等と入力
  3. サジェストから「MAXIFS」を選択し、「Tab」キーで確定
  4. 元データのシートへ移動
    ※今回は「注文テーブル」シート
  5. 最大値の計算対象のセル範囲を選択
    ※今回は「金額」列(G:G
  6. コンマ(,)を入力
  7. 条件の検索対象のセル範囲を選択
    ※今回は「商品名」列(D:D
  8. コンマ(,)を入力
  9. 集計表のシートへ移動
    ※今回は「集計表」シート
  10. 条件となるセルを選択
    ※今回はA4セル
  11. Enter」キーで確定
  12. 1行目の数式をコピーし、以降のセルへペースト
    ※今回はB5~B12セルへペースト

手順②の際にIMEを半角英数モードにすること。
手順⑩も必要に応じて参照形式を変更すること(今回は指定しなくともOK)。
2種類以上の条件を設定したい場合、手順の後に手順⑥~⑩を繰り返すこと。

【応用】MAXIFSで完全一致以外の条件で集計するには

MAXIFSの引数「条件n」は「完全一致」が原則です。

もし、完全一致以外の条件で集計したい場合は、「ワイルドカード」と「比較演算子」を活用すればOKです。

参考記事

MAXIFSで完全一致以外の条件で集計する方法の詳細は以下の記事をご参照ください。

【参考】Excel2016以前のバージョンで条件別の最大値を集計するには

MAXIFSExcel2016以前のバージョンでは使用できません。

もし、そのバージョンで条件別の最大値の集計が必要な場合、MAXを「IF」と組み合わせ、配列数式にする必要があります。

これでMAXIFSと同じ集計が可能です。

参考記事

MAX+IF(配列数式)の詳細は以下の記事をご参照ください(MEDIANの部分をMAXへ置き換え)。

サンプルファイルで練習しよう!

可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。

サンプルファイル_ワークシート関数_MAXIFS.xlsx

サンプルファイルのダウンロードには無料メルマガに登録いただく必要があります(上記リンクから登録フォームへ遷移します)。

ブックを開いたら、次の手順を実施してください(今までの解説のまとめです)。

  1. 関数を挿入するセルを選択
  2. =maxi」等と入力
  3. サジェストから「MAXIFS」を選択し、「Tab」キーで確定
  4. 元データのシートへ移動
    ※今回は「注文テーブル」シート
  5. 最大値の計算対象のセル範囲を選択
    ※今回は「金額」列(G:G
  6. コンマ(,)を入力
  7. 条件の検索対象のセル範囲を選択
    ※今回は「商品名」列(D:D
  8. コンマ(,)を入力
  9. 集計表のシートへ移動
    ※今回は「集計表」シート
  10. 条件となるセルを選択
    ※今回はA4セル
  11. Enter」キーで確定
  12. 1行目の数式をコピーし、以降のセルへペースト
    ※今回はB5~B12セルへペースト

本記事の解説と同じ結果になればOKです!

さいごに

いかがでしたでしょうか?

MAXIFSは条件別の最大値を集計できる関数です。

集計表で条件別の最大値を掲載する機会がある方は、この機会に覚えておきましょう。

なお、MAXIFS以外にもExcelでのデータ集計の各種テクニックを拙著で解説していますので、こちらも参考にしてみてください。


また、よりコアな情報を発信していくために「公式LINE」を開始しましたので、ご興味があれば以下バナーから友だち追加をお願いします!
特典として、Excelワークシート関数一覧(計22スライド)やExcelショートカットキー一覧(計25スライド)等をプレゼント!

森田貢士の公式LINEへの友だち追加告知用バナー

ご参考になれば幸いですm(_ _)m

森田森田

MAXIFSとセットで覚えておいた方が良い関数は、条件別の最小値を集計できる「MINIFS」です。
もし、条件別の中央値/最頻値も集計したい場合は、専用関数がないため、MEDIAN+IFMODE+IFの配列数式を覚えると良いでしょう。