- 作成日 : 2025年8月5日
MAXIFS関数とは?複数の条件で最大値を抽出する方法
MAXIFS関数(読み方:マックスイフス関数)は、複数の条件を満たすデータの中から最大値を抽出できる便利なExcel関数です。
従来のMAX関数や、MAXとIFを組み合わせた配列数式よりもシンプルに記述でき、直感的に使えるのが特徴です。
たとえば、「特定の部署の売上の中で最も高い金額」や「ある商品の特定期間における最高販売数」など、複雑な条件で最大値を求めたい場面で非常に役立ちます。
目次
MAXIFS関数の基本的な書式
MAXIFS関数の書式は以下の通りです。
- 最大範囲(必須):最大値を検索する数値データが含まれるセル範囲です。
- 条件範囲1(必須):1つ目の条件を適用するセル範囲です。
- 条件1(必須):1つ目の条件です。数値、論理式、または文字列で指定します。
- 条件範囲2, 条件2(省略可能):2つ目以降の条件とその範囲です。最大126組まで指定できます。
MAXIFS関数の使い方:具体例で学ぶステップ
MAXIFS関数の使い方を、具体的な例を挙げて解説します。
例1:特定の部署の最高売上を求める
以下のデータを使って、「営業部」の最高売上を求めてみましょう。
| 部署 | 売上 |
|---|---|
| 営業部 | 100 |
| 開発部 | 120 |
| 営業部 | 150 |
| 広報部 | 80 |
| 営業部 | 130 |
- 最大範囲の指定:売上が入力されているセル範囲(例:B2:B6)を指定します。
- 条件範囲1の指定:部署名が入力されているセル範囲(例:A2:A6)を指定します。
- 条件1の指定:「営業部」と入力します(または「営業部」が入力されているセルを参照します)。
数式は以下のようになります。
=MAXIFS(B2:B6, A2:A6, “営業部”)
この数式を実行すると、「150」という結果が得られます。
例2:複数の条件で最高販売数を求める
次に、以下のデータを使って「商品A」で「担当者X」が販売した最高数を求めてみましょう。
| 商品名 | 担当者 | 販売数 |
|---|---|---|
| 商品A | 担当者X | 50 |
| 商品B | 担当者Y | 70 |
| 商品A | 担当者Y | 60 |
| 商品B | 担当者X | 40 |
| 商品A | 担当者X | 80 |
- 最大範囲の指定:販売数が入力されているセル範囲(例:C2:C6)を指定します。
- 条件範囲1の指定:商品名が入力されているセル範囲(例:A2:A6)を指定します。
- 条件1の指定:「商品A」と入力します。
- 条件範囲2の指定:担当者が入力されているセル範囲(例:B2:B6)を指定します。
- 条件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/15 | 100 |
| 2024/01/05 | 120 |
| 2024/02/10 | 150 |
| 2023/11/20 | 80 |
| 2024/03/01 | 130 |
数式は以下のようになります。
=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関数でうまくいかない点があれば、今回ご紹介した「よくあるエラーと対策」を参考にしてみてください。少しずつ練習を重ねることで、きっと自在に使いこなせるようになるでしょう。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
スプレッドシートをメール添付して送るには?PC・スマホでの送信方法まで解説
Googleスプレッドシートをメールで送信する方法には「共有リンクの送信」「ファイルを添付」「スプレッドシートから直接送信」の3つがあります。それぞれ特徴が異なるため、用途に応じた使い分けが重要です。本記事では、PCとスマホそれぞれでの具体…
詳しくみるFORECAST関数の使い方:エクセルで売上予測や需要予測を行う統計的手法
FORECAST関数は、既存のデータから線形回帰分析を行い、将来の値を予測するエクセルの統計関数です。過去の売上データから将来の売上を予測したり、温度と電力消費の関係から消費量を予測したりと、ビジネスの様々な場面で活用されています。 本記事…
詳しくみるエクセルでシート移動するためのショートカットを紹介
エクセルを使用する際、複数のシートを効率的に移動する技術は、業務のスムーズな進行に欠かせません。シート間の移動を簡単にするためのショートカットキーや操作方法を活用することで、作業効率が大幅に向上します。本記事では、エクセルでシートを移動する…
詳しくみるLOOKUP関数とは?VLOOKUP関数との違いや使い方をわかりやすく解説
LOOKUP関数は、ExcelやGoogleスプレッドシートでデータを検索するための強力なツールです。この関数を使用すると、指定した値をもとに、他の値を簡単に取得できます。本記事では、LOOKUP関数の基本的な使い方や、代表的なVLOOKU…
詳しくみるエクセルで行や列を全選択する方法まとめ
エクセルを利用する際、行や列を効率的に全選択することは、作業のスピード向上やデータ管理のために非常に重要です。本記事では、エクセルで行や列を一気に全選択する方法を詳しく解説します。また、一番下の行まで選択する方法や図形の全選択方法についても…
詳しくみるスプレッドシートのCOUNTIF関数の使い方!複数範囲や条件設定方法まで解説
Googleスプレッドシートでデータを集計するときに欠かせないのが COUNTIF関数 です。条件に合致するセルの数を自動で数えてくれるため、売上管理や在庫チェック、アンケート集計など、幅広いシーンで役立ちます。 この記事では、COUNTI…
詳しくみる