概要
Excel で「フラグを立てる」とは、
「条件を満たしている行をわかりやすく印(目印)する」ことです。
例えばこんな場面で使います。
- 売上が 10 万円以上の行に「対象」とフラグを付ける
- 在庫が 0 の行に「要発注」とフラグを付ける
- 期限を過ぎた行に「期限切れ」とフラグを付ける
この「条件を満たしたらフラグを表示する」処理の主役が IF 関数です。
IF でフラグを立てる基本形
IF の書式
まず、IF の基本形を整理します。
=IF(条件, 条件がTRUEのときの値, 条件がFALSEのときの値)
- 条件が TRUE(条件を満たす)なら「条件がTRUEのときの値」を返す
- 条件が FALSE(条件を満たさない)なら「条件がFALSEのときの値」を返す
フラグを立てる場合は、
「条件を満たしたら ‘フラグ文字’、満たさなければ空白や 0」
という形にするのが定番です。
数値条件でフラグを立てる
売上が 100,000 以上なら「対象」とフラグを立てる
前提:
- B列に売上金額(B2 に金額)
- C列にフラグを立てたい
C2 に次のように書きます。
=IF(B2>=100000, "対象", "")
動きはこうです。
- B2 が 100000 以上 → 「対象」と表示(フラグ ON)
- B2 が 100000 未満 → 空白(フラグ OFF)
この式を C列の下までコピーすれば、
売上が条件を満たしている行だけに「対象」というフラグが立ちます。
在庫が 0 以下なら「要確認」とフラグを立てる
前提:
- C列に在庫数(C2 に在庫)
- D列でフラグ表示
D2 に次の式を書きます。
=IF(C2<=0, "要確認", "")
在庫数が 0 以下(マイナス在庫含む)の行だけ「要確認」と表示されます。
日付条件でフラグを立てる
期限日が今日より前なら「期限切れ」
前提:
- A列に期限日(A2 に期限日)
- B列にフラグ
B2 に次の式を書きます。
=IF(A2<TODAY(), "期限切れ", "")
- A2 が今日より前 → 「期限切れ」
- 今日以降 → 空白
「今日より前」を使うことで、毎日開くたびに自動で判定が更新されます。
文字列条件でフラグを立てる
ステータスが「未処理」の行にフラグを立てる
前提:
- C列にステータス(「未処理」「処理中」「完了」など)
- D列にフラグ
D2 に次の式を書きます。
=IF(C2="未処理", "★", "")
C2 が「未処理」の行だけ「★」が表示されます。
「★」の代わりに「未」「要対応」「1」など、好きなフラグ表示に変えて構いません。
TRUE / FALSE フラグにするパターン
条件を満たす行を TRUE / FALSE で持っておく
フラグを文字ではなく、TRUE / FALSE で持つこともよくあります。
その場合は、IF を使わず条件式だけで書けます。
売上が 100,000 以上かどうかを TRUE / FALSE で判定する例:
=B2>=100000
- B2 が 100000 以上 → TRUE
- それ以外 → FALSE
この TRUE / FALSE を、後でフィルターや別の式(例えば COUNTIF など)で利用できます。
「見た目よりも、後処理に使うフラグ」としてとても実用的です。
数値フラグ(1 / 0)にするパターン
集計に使いやすい 1 / 0 フラグ
「後で合計して件数を数えたい」場合は、1 / 0 でフラグを持つと便利です。
売上が 100,000 以上なら 1、それ以外は 0 とする例:
=IF(B2>=100000, 1, 0)
この列を SUM すれば、
「条件を満たした行の件数(フラグが立った件数)」がそのまま分かります。
複数条件でフラグを立てる(AND / OR と組み合わせ)
「東京支店」かつ「売上 100,000 以上」にフラグ
前提:
- A列:支店名
- B列:売上
- C列:フラグ
C2 に次の式を書きます。
=IF(AND(A2="東京", B2>=100000), "対象", "")
2つの条件を同時に満たす行だけ「対象」と表示されます。
「在庫 0 以下」または「期限切れ」にフラグ
前提:
- B列:在庫
- C列:期限日
D2 に次の式を書きます。
=IF(OR(B2<=0, C2<TODAY()), "要対応", "")
どちらか一方でも問題があれば「要対応」とフラグが立ちます。
例題
問題1
B2 に売上金額が入っています。
売上が 100,000 以上なら「対象」、それ以外は空白と表示するフラグ用の式を書いてください。
=IF(B2>=100000, "対象", "")
問題2
C2 に在庫数が入っています。
在庫が 0 以下なら「要確認」、それ以外は空白と表示する式を書いてください。
=IF(C2<=0, "要確認", "")
問題3
A2 に期限日が入っています。
期限日が今日より前なら「期限切れ」、それ以外は空白と表示する式を書いてください。
=IF(A2<TODAY(), "期限切れ", "")
問題4
C2 にステータス(「未処理」「処理中」「完了」)が入っています。
ステータスが「未処理」のときだけ「★」を表示し、それ以外は空白とする式を書いてください。
=IF(C2="未処理", "★", "")
問題5
A2 に支店名、B2 に売上が入っています。
支店が「東京」かつ売上が 100,000 以上のとき「対象」、それ以外は空白と表示する式を書いてください。
=IF(AND(A2="東京", B2>=100000), "対象", "")
まとめ
IF でフラグを立てる時の基本パターンはこれだけです。
=IF(条件, "フラグ表示", "")
あるいは、集計向けなら
=IF(条件, 1, 0)
条件をどう書くか(>=, <=, =”文字”, AND, OR など)さえ決めれば、
どんな場面でも同じ型でフラグ列を作れます。
あなたが今使っている表の中で
「あとから抽出したい行」「あとから数えたい行」があったら、
まず 1 本、IF でフラグ列を作ってみてください。
それが、Excel で“自分のルールを表に埋め込む”第一歩になります。
