【スプレッドシート】条件を指定して最大値を抽出!MAXIFS関数

GoogleスプレッドシートのMAXIFS関数は、複数の条件を満たす項目の中から、最大値を抽出できる便利な関数です。この記事では、MAXIFS関数の基本的な使い方から、日付やセル参照を条件にする応用テクニックまで、具体例を交えて分かりやすく解説します。

スポンサーリンク

MAXIFS関数の使い方

【スプレッドシート】条件を指定して最大値を抽出!MAXIFS関数

MAXIFS関数は、指定した条件を満たすセル範囲の中から、最大の値を返します。

例:=MAXIFS(C2:C5,A2:A5,"野菜")

この数式は、A列が「野菜」という条件に一致する行の、C列の最大値(例: 300)を返します。

MAXIFS関数の引数:(範囲, 条件範囲1, 条件 1, [条件範囲2, …], [条件 2, …])


その他の条件(以上・以下・以外など)の指定方法

比較演算子を使うことで、数値や日付を条件として指定できます。条件は二重引用符(""で囲んでください。

  • 〜以上: ">=100"
  • 〜以下: "<=100"
  • 〜と等しくない: "<>100"
  • 〜より大きい: ">100"
  • 〜より小さい: "<100"
スポンサーリンク

条件に日付を指定する方法

【スプレッドシート】条件を指定して最大値を抽出!MAXIFS関数

特定の日付よりも前の期間の最大値を抽出したい場合は、"<YYYY/MM/DD" のように記述します。

たとえば、「A列が2026年1月1日より前」という条件に一致する行の、C列の最大値を抽出したい場合、数式は以下のようになります。

例:=MAXIFS(C2:C5,A2:A5,"<2026/01/01")

スポンサーリンク

条件をセル参照にする

【スプレッドシート】条件を指定して最大値を抽出!MAXIFS関数

条件に比較演算子とセル参照を組み合わせる場合は、&を使って、両者を結合します。

例:=MAXIFS(C2:C5,A2:A5,"<"&E2)

&は、"<"E2セルの値を結合することで、数式内で<2026/01/01という条件を生成します。

スポンサーリンク

よくある質問とエラーの対処法

  • MAXIFSで2番目に大きい値を抽出したい
    • MAXIFS関数は、条件に一致する最大値しか抽出できません。2番目以降の値を抽出したい場合は、FILTER関数とLARGE関数を組み合わせます。詳しくは、LARGE関数の記事をご参照ください。(詳細はコチラ
  • 複数条件(OR)を指定したい
    • いずれかの条件を満たすセル範囲から最大値を抽出したい場合は、MAX関数とFILTER関数を次のように組み合わせます。(詳細はコチラ
    • 例:=MAX(FILTER(C2:C5,(A2:A5="条件1")+(A2:A5="条件2")))
  • 結果が0になる
    • 条件と一致する値がない: 入力ミスがないか、範囲指定が正しいかを確認します。
    • 数字が文字列になっている: 数字が全角になっていないか、セルの表示形式が「テキスト」になっていないかを確認します。
タイトルとURLをコピーしました