「MIN関数で最小値を出したら、TRUEやFALSEが入ったセルが無視されてしまった」。こんな経験はありませんか?
MIN関数は論理値や文字列をスキップするので、データの全体像をつかめません。TRUE/FALSEが混在するアンケートや検査結果では困りますよね。
MINA関数なら、論理値や文字列も含めた最小値を求められます。 この記事ではMIN関数との違いや実務パターン、エラー対処法を解説します。
MINA関数とは?読み方と基本の仕組み
MINA関数は、指定した範囲の中から論理値や文字列も含めて最小値を返す関数です。
読み方は「ミニマムエー関数」です。MINに「All(すべて)」のAが付いた名前です。すべてのデータ型を含めて最小値を求めるという意味があります。同じパターンの関数にMAXA関数(最大値版)があります。
TIP
「A」が付く関数は他にもあります。COUNTA関数はCOUNT関数の「すべてのデータ型をカウントする」版です。MAXA/MINAも同じ命名パターンで、「論理値・文字列も含めて集計する」という意味を持ちます。
Excel 2000以降のすべてのバージョンとMicrosoft 365で使えます。
通常のMIN関数との一番大きな違いは、データ型ごとの扱い方です。
| データの種類 | MIN関数の扱い | MINA関数の扱い |
|---|---|---|
| 数値 | 比較対象になる | 比較対象になる |
| TRUE | 無視する | 1として計算 |
| FALSE | 無視する | 0として計算 |
| 文字列 | 無視する | 0として計算 |
| 空白セル | 無視する | 無視する |
| エラー値 | エラーが返る | エラーが返る |
ポイントは「TRUEを1、FALSEと文字列を0として扱う」点です。
たとえばセル範囲に 5, TRUE, "合格" が入っているとします。MIN関数では 5 だけが対象で、結果は 5 です。
MINA関数は 5, 1, 0 として計算するので、結果は 0 になります。
NOTE
引数に論理値や文字列を直接入力した場合は、MIN関数でもTRUE=1、FALSE=0として計算されます。セル範囲内にある場合の動作が異なるのがMINA関数の特徴です。
MINA関数の書き方(構文と引数)
基本構文
=MINA(値1, [値2], ...)
引数の説明
| 引数 | 必須/任意 | 内容 |
|---|---|---|
| 値1 | 必須 | 最小値を求めたい値、セル参照、またはセル範囲 |
| 値2以降 | 任意 | 追加で比較したい値や範囲(最大255個まで指定可能) |
MIN関数と構文はまったく同じです。違いはセル範囲内の論理値・文字列の扱いだけです。セル参照、セル範囲、数値の直接入力が指定できます。
MINA関数の基本的な使い方
結論から言うと、セル範囲を指定するだけです。書き方はMIN関数と同じです。
たとえばA1からA10にデータが入っている場合はこう書きます。
=MINA(A1:A10)
A1からA10の中で一番小さい値が返ります。このとき、TRUEは1、FALSEと文字列は0として計算に含まれます。
MIN関数と結果が変わるケースを確認しよう
MINA関数の特徴がよくわかる例を見てみましょう。
| セル | 値 | MIN関数の扱い | MINA関数の扱い |
|---|---|---|---|
| A1 | 5 | 5 | 5 |
| A2 | 10 | 10 | 10 |
| A3 | TRUE | 無視 | 1 |
| A4 | FALSE | 無視 | 0 |
| A5 | “テスト” | 無視 | 0 |
=MIN(A1:A5) → 結果: 5
=MINA(A1:A5) → 結果: 0
正の数にFALSEや文字列が混在すると結果が変わります。MIN関数は 5、MINA関数は 0 です。「FALSEや文字列を含めて比較したいか」で使い分けましょう。
数値だけのデータではMIN関数と同じ結果
データが数値だけの場合は、MINA関数もMIN関数も同じ結果を返します。
=MIN(80, 95, 72) → 結果: 72
=MINA(80, 95, 72) → 結果: 72
わざわざMINA関数を使う必要はありません。「論理値や文字列が混在するデータ」に限定して使い分けるのがおすすめです。
MINA関数の実務活用パターン
基本の使い方がわかったところで、実務でMINA関数が活躍する場面を見ていきましょう。
TRUE/FALSEが混在するアンケートデータの集計
アンケート結果でTRUE/FALSEの回答と数値スコアが混在するシートを扱うことがあります。
たとえばB列に「満足度スコア(1〜5)」が入っているとします。一部のセルにTRUE/FALSEが入っているケースです。
=MINA(B2:B50)
MINA関数ならTRUE=1、FALSE=0として計算に含めます。MIN関数ではTRUE/FALSEが無視されるので注意してください。
検査結果の合否データから最小値を求める
品質検査でセルにTRUE(合格)/FALSE(不合格)と数値の測定値が混在するケースです。
=MINA(C2:C100)
FALSE=0として含めるので、FALSEがあれば 0 が返ります。不合格データの見逃し防止に役立ちますよ。
MAXA関数と組み合わせてデータの振れ幅を求める
MINA関数と対になるMAXA関数を組み合わせると、論理値・文字列を含めたデータの振れ幅が求められます。
=MAXA(A2:A50) - MINA(A2:A50)
MAX-MINではスキップされていたTRUE/FALSEも含めた「本当のレンジ」がわかります。
IF関数と組み合わせて判定に使う
MINA関数の結果をもとに条件分岐させるパターンです。
=IF(MINA(B2:B10)<1, "要確認データあり", "すべて有効")
FALSEや文字列が1つでもあれば「要確認」と判定できます。IF関数(条件に応じて処理を分岐する関数)との組み合わせは便利ですよ。
COUNTA関数と組み合わせてデータの概況を把握する
=MINA(A2:A100) & " / " & COUNTA(A2:A100) & "件"
最小値とデータ件数を1つのセルにまとめる書き方です。COUNTA関数(空白以外のセルを数える関数)と組み合わせると、データの概況を一目で把握できます。
MINA関数とMIN関数の違い
MINA関数とMIN関数の違いを改めて整理しておきましょう。
| 比較項目 | MINA関数 | MIN関数 |
|---|---|---|
| 機能 | 論理値・文字列を含めた最小値 | 数値のみの最小値 |
| 構文 | =MINA(範囲) | =MIN(範囲) |
| TRUEの扱い | 1として計算 | 無視する |
| FALSEの扱い | 0として計算 | 無視する |
| 文字列の扱い | 0として計算 | 無視する |
| 空白セルの扱い | 無視する | 無視する |
| 引数に直接入力 | TRUE=1、FALSE=0 | TRUE=1、FALSE=0 |
| 数値のみのとき | 同じ結果 | 同じ結果 |
| 対になる関数 | MAXA関数 | MAX関数 |
| 使いどころ | TRUE/FALSE混在データ | 通常の数値データ |
迷ったらMIN関数を使いましょう。 大半の業務データは数値だけなのでMIN関数で十分です。「TRUE/FALSEも計算に含めたい」ときだけMINA関数の出番です。
TIP
引数に論理値を直接入力した場合(
=MIN(TRUE, 3, 5)など)は、MIN関数でもTRUE=1として計算します。セル範囲を指定した場合のみ動作が異なります。
よくあるエラーと対処法
MINA関数自体がエラーを出すことは少ないですが、意図しない結果になるケースがあります。
| 症状 | 原因 | 解決策 |
|---|---|---|
結果が 0 になる | 範囲内に文字列やFALSEが含まれる | 0が正しい動作。意図しない場合はMIN関数を使う |
結果が 0 になる | 範囲の指定ミス | 数式バーで範囲をクリックして色付き枠を確認 |
#N/A が返る | 範囲内にエラーセルがある | IFERROR関数(エラー時に代替値を返す関数)でエラーを処理 |
#VALUE! が返る | 範囲内にエラーセルがある | AGGREGATE関数(後述)で回避 |
| MIN関数と結果が違う | TRUE/FALSE・文字列の扱いの差 | 意図どおりの動作。使い分けを確認 |
結果が「0」になるときの対処法
MINA関数で0が返る場合、2つの可能性があります。
1つ目は、範囲内にFALSEや文字列があるケースです。MINA関数の正常な動作なので、0を除外したいならMIN関数を使いましょう。
2つ目は、数値に見えるデータが文字列になっているケースです。ISNUMBER関数(セルの値が数値かどうか判定する関数)でセルの中身をチェックしてみてください。
=ISNUMBER(A1)
FALSE なら文字列です。CSVから取り込んだデータは文字列になりがちです。データタブの「区切り位置」やVALUE関数(文字列を数値に変換する関数)で変換できます。
範囲内にエラーがあるときの対処法
範囲に #N/A や #VALUE! が含まれていると、MINA関数もエラーになります。AGGREGATE関数で対処できます。
=AGGREGATE(5, 6, A1:A100)
第1引数 5 は「最小値」、第2引数 6 は「エラー値を無視」です。ただしAGGREGATE関数はMIN関数と同じ動作です。論理値・文字列は無視されます。
MINA関数の動作でエラーも無視したい場合はこちらです。
=MINA(IFERROR(A1:A100, ""))
NOTE
この式はMicrosoft 365またはExcel 2021以降のスピル対応環境で動作します。それ以前のバージョンではCtrl+Shift+Enterで確定してください。
似た関数との違い・使い分け
MINA関数に関連する関数をまとめて比較します。
| 関数 | 機能 | 使い分けのポイント |
|---|---|---|
| MINA | 論理値・文字列を含めた最小値 | TRUE/FALSE混在データの最小値 |
| MIN | 数値のみの最小値 | 通常の最小値はこれでOK |
| MAXA | 論理値・文字列を含めた最大値 | TRUE/FALSE混在データの最大値 |
| MAX | 数値のみの最大値 | 通常の最大値はこれでOK |
| MINIFS | 条件付きの最小値 | 部署別・月別で絞りたいとき |
| SMALL | N番目に小さい値 | 2位・3位の値を取得したいとき |
| LARGE | N番目に大きい値 | 上から数えたいとき |
| COUNTA | 空白以外のセル数 | データ件数を数えたいとき |
MAXA関数との関係
MINA関数の対になる関数がMAXA関数です。構文も引数もまったく同じで、取得する方向が逆です。
| 比較項目 | MINA関数 | MAXA関数 |
|---|---|---|
| 機能 | 論理値・文字列を含めた最小値 | 論理値・文字列を含めた最大値 |
| TRUEの扱い | 1として計算 | 1として計算 |
| FALSEの扱い | 0として計算 | 0として計算 |
| 文字列の扱い | 0として計算 | 0として計算 |
=MINA(A1:A10) → 一番小さい値
=MAXA(A1:A10) → 一番大きい値
セットで覚えておくと便利ですよ。
MIN関数とMINA関数の選び方フロー
どちらを使うか迷ったら、次の基準で判断してください。
- データが数値だけ → MIN関数でOK
- TRUE/FALSEが混在していて計算に含めたい → MINA関数
- TRUE/FALSEが混在しているが無視したい → MIN関数
ほとんどの場合はMIN関数で事足ります。MINA関数はTRUE/FALSEを含めたいときの特殊用途と覚えておきましょう。
「A」付き関数の命名パターン
Excelには「A」が付くことで論理値・文字列もカウント対象に含める関数がいくつかあります。パターンを知っておくと覚えやすいですよ。
| 通常版 | A付き版 | 違い |
|---|---|---|
| MIN | MINA | 最小値の計算にTRUE/FALSE・文字列を含めるか |
| MAX | MAXA | 最大値の計算にTRUE/FALSE・文字列を含めるか |
| COUNT | COUNTA | 数値だけ数えるか、空白以外すべて数えるか |
| AVERAGE | AVERAGEA | 平均の計算にTRUE/FALSE・文字列を含めるか |
いずれも「A = All data types」で、通常版が無視するデータ型を計算に含めるのが共通ルールです。MINA関数を覚えれば、MAXA・AVERAGEAも同じ感覚で使えます。
まとめ
- MINA関数は論理値や文字列も含めて最小値を返す関数
- TRUE=1、FALSE=0、文字列=0として計算に含める
- 書き方は
=MINA(範囲)で、MIN関数と構文は同じ - 数値だけのデータならMIN関数と結果は変わらない
- 対になる関数はMAXA関数(論理値を含めた最大値)
- 「0が返る」ときはISNUMBER関数でデータ型を確認
- 迷ったらMIN関数。TRUE/FALSEを含めたいときだけMINA関数
MINA関数は使いどころが限定的ですが、TRUE/FALSEが混在するデータでは頼りになります。まずはMIN関数の使い方を押さえて、必要に応じて使い分けてみてください。
