• 作成日 : 2025年8月5日

MAXIFS関数とは?複数の条件で最大値を抽出する方法

MAXIFS関数(読み方:マックスイフス関数)は、複数の条件を満たすデータの中から最大値を抽出できる便利なExcel関数です。

従来のMAX関数や、MAXとIFを組み合わせた配列数式よりもシンプルに記述でき、直感的に使えるのが特徴です。

たとえば、「特定の部署の売上の中で最も高い金額」や「ある商品の特定期間における最高販売数」など、複雑な条件で最大値を求めたい場面で非常に役立ちます。

MAXIFS関数の基本的な書式

MAXIFS関数の書式は以下の通りです。

=MAXIFS(最大範囲, 条件範囲1, 条件1, [条件範囲2, 条件2], …)
  • 最大範囲(必須):最大値を検索する数値データが含まれるセル範囲です。
  • 条件範囲1(必須):1つ目の条件を適用するセル範囲です。
  • 条件1(必須):1つ目の条件です。数値、論理式、または文字列で指定します。
  • 条件範囲2, 条件2(省略可能):2つ目以降の条件とその範囲です。最大126組まで指定できます。

MAXIFS関数の使い方:具体例で学ぶステップ

MAXIFS関数の使い方を、具体的な例を挙げて解説します。

例1:特定の部署の最高売上を求める

以下のデータを使って、「営業部」の最高売上を求めてみましょう。

部署売上
営業部100
開発部120
営業部150
広報部80
営業部130
  1. 最大範囲の指定:売上が入力されているセル範囲(例:B2:B6)を指定します。
  2. 条件範囲1の指定:部署名が入力されているセル範囲(例:A2:A6)を指定します。
  3. 条件1の指定:「営業部」と入力します(または「営業部」が入力されているセルを参照します)。

数式は以下のようになります。

=MAXIFS(B2:B6, A2:A6, “営業部”)

この数式を実行すると、「150」という結果が得られます。

例2:複数の条件で最高販売数を求める

次に、以下のデータを使って「商品A」で「担当者X」が販売した最高数を求めてみましょう。

商品名担当者販売数
商品A担当者X50
商品B担当者Y70
商品A担当者Y60
商品B担当者X40
商品A担当者X80
  1. 最大範囲の指定:販売数が入力されているセル範囲(例:C2:C6)を指定します。
  2. 条件範囲1の指定:商品名が入力されているセル範囲(例:A2:A6)を指定します。
  3. 条件1の指定:「商品A」と入力します。
  4. 条件範囲2の指定:担当者が入力されているセル範囲(例:B2:B6)を指定します。
  5. 条件2の指定:「担当者X」と入力します。

数式は以下のようになります。

=MAXIFS(C2:C6, A2:A6, “商品A”, B2:B6, “担当者X”)

この数式を実行すると、「80」という結果が得られます。

MAXIFS関数の利用シーン:ビジネスでの活用例

MAXIFS関数は、ビジネスのさまざまなシーンで活躍します。

営業部門

特定の期間における地域ごとの最高売上を把握したり、特定の担当者が達成した商品カテゴリ別の最高売上を分析したりする際に非常に役立ちます。これにより、より効果的なリソース配分や戦略立案が可能になります。

マーケティング部門

最高コンバージョン率から、最も高い効果を出した広告チャネルとキャンペーンを特定したり、最も購買頻度の高かった商品の最高販売数から、特定の顧客セグメントに強く支持される商品を調べたりすることで、施策の改善につなげられます。

人事部門

特定の部署における評価点の最も高い従業員を特定したり、ある職種における資格取得数が最も多い従業員を検索したりすることで、人材配置や育成計画に活用できます。

在庫管理

特定の倉庫にある商品の最大在庫数を把握したり、特定の商品グループで最も多く出荷された月の出荷数を特定したりすることで、保管の最適化、需要予測の改善、在庫切れ/過剰在庫の防止など効率的な在庫運用に貢献します。

MAXIFS関数の応用:ワイルドカードと日付条件

MAXIFS関数は、ワイルドカードや日付条件と組み合わせることで、さらに柔軟な検索が可能です。

ワイルドカードを使った条件指定

ワイルドカードとは、あいまいな文字列を表現するために使われる特殊な文字です。

  • * (アスタリスク):任意の数の文字を表します。
  • ? (クエスチョンマーク):任意の一文字を表します。

たとえば、「”営業*”」と指定すると、「営業」で始まるすべての文字列(「営業部」「営業一課」など)が対象となります。

例:名前に「部」が含まれる部署の最高売上

部署売上
営業部100
開発部120
営業一課150
広報部80
営業二課130

数式は以下のようになります。

=MAXIFS(B2:B6, A2:A6, “*部”)

この数式では、元のデータテーブル(営業部、開発部、広報部のみが含まれる場合)に基づいて「営業部」と「開発部」と「広報部」が対象となり、「開発部」の「120」が最大値として返されます。

日付条件を使った条件指定

日付は、”>2023/01/01″ のように、比較演算子と組み合わせて条件を指定します。

例:2024年1月1日以降の最高売上

日付売上
2023/12/15100
2024/01/05120
2024/02/10150
2023/11/2080
2024/03/01130

数式は以下のようになります。

=MAXIFS(B2:B6, A2:A6, “>=2024/1/1”)

この数式を実行すると、A2:A6の日付が2024年1月1日以降という条件と一致するセルを対象とし、その中から「150」という結果が得られます。日付はセル参照にすることも可能です。

よくあるエラーと対策

MAXIFS関数を使用する際によく遭遇するエラーとその対策について解説します。

#VALUE! エラー

#VALUE! エラーは、主に最大範囲に含まれるセルが数値ではない場合や、条件範囲と最大範囲の行数が一致していない場合に発生します。対策としては、最大範囲には数値のみが含まれていることや、条件範囲と最大範囲が同じ行数であることを徹底してください。たとえば、B2:B10を最大値を求める範囲とした場合、条件範囲もA2:A10のように同じ行数に設定する必要があります。

結果が「0」で表示

Excel では、指定されたすべての条件に一致するデータが見つからない場合に発生するのが、この#N/A エラーです。ところがMAXIFS関数の場合には、一致するデータがない場合にエラーを返すのではなく、「0」を返します。この結果が0になった場合は、入力した条件が正しいか、そしてデータ内に条件に一致するものが本当に存在するかをよく確認してください。

条件の誤り

条件の指定方法に誤りがある場合もエラーの原因となります。特に、文字列、日付、比較演算子などの条件の定義方法には十分注意してください。

対策として、文字列は必ずダブルクォーテーションで囲むようにし(例:”営業部”)、日付はExcelが認識できる形式(例:”2024/1/1″)で入力するか、日付が入力されているセルを参照するようにしてください。また、比較演算子は正しく使用し、必要に応じて&でセル参照と結合する(例:”>”&A1)ことも覚えておくと良いでしょう。

これらの点に注意することで、MAXIFS関数をより正確に、そして効率的に使いこなせます。

MAXIFS関数の使い方まとめ

本記事では、エクセルのMAXIFS関数について、その概要から具体的な使い方、応用例、そしてよくあるエラーとその対策までを詳しく解説しました。

MAXIFS関数は、複数の条件に基づいて最大値を抽出できるため、日々のデータ分析やレポート作成において非常に役立つツールとなります。業務効率を向上させるためにも、MAXIFS関数を使いこなすのがおすすめです。

MAXIFS関数でうまくいかない点があれば、今回ご紹介した「よくあるエラーと対策」を参考にしてみてください。少しずつ練習を重ねることで、きっと自在に使いこなせるようになるでしょう。


※ 掲載している情報は記事更新時点のものです。

※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。

関連記事