「スプレッドシートに FALSE関数 ってあるけど、FALSEを返すだけの関数って何に使うの?」「=FALSE() と FALSE は何が違うの?」。論理関数を勉強していると、こんな素朴な疑問が浮かびますよね。
スプレッドシートのFALSE関数は、出番こそ多くありません。ですが、IF関数の初期値やVLOOKUPの完全一致指定など、論理値FALSEを使う場面は実務にも意外と多いんですよ。チェックボックスや初期フラグの管理にも顔を出します。
この記事ではFALSE関数の基本から、=FALSE() と FALSE と 0 の違いまでを順に解説します。VLOOKUPの第4引数やIFERRORとの組み合わせなど、実務的な活用テクニックも紹介していきますね。
スプレッドシートのFALSE関数とは?
スプレッドシートのFALSE関数(読み方: フォルス関数)は、論理値FALSEを返すだけのシンプルな関数です。論理値とは「TRUE(真)」か「FALSE(偽)」の2値だけを持つ特殊な値で、条件が成立しているかどうかを表します。
FALSE関数でできることは、次のとおりです。
- 論理値FALSEを明示的に数式の中に組み込む
- 他の表計算ソフトとの互換性を保つ
- IF関数やVLOOKUPの引数として論理値を指定する
実は、スプレッドシートでは =FALSE() と書かなくても大丈夫です。セルに直接 FALSE と入力すれば、論理値FALSEとして認識されます。FALSE関数は「関数として書く書き方も用意されている」というポジションなんですね。
NOTE
FALSE関数はGoogleスプレッドシートの全バージョンで使えます。Microsoft Excelとも完全互換なので、ファイルをやり取りしても挙動が変わりませんよ。
スプレッドシートのFALSE関数の書き方(構文と引数)
基本構文
=FALSE()
カッコの中には何も入れません。引数を取らない、ちょっと珍しいタイプの関数です。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| (なし) | — | FALSE関数は引数を取りません |
引数を渡すとエラーになります。=FALSE(0) のような書き方はできないので注意しましょう。
TIP
大文字・小文字は区別されません。
=false()でも=False()でも同じ結果になりますよ。
戻り値
FALSE関数の戻り値は、常に論理値FALSEです。セルに表示されるときは「FALSE」と表示されます。
FALSE関数の基本的な使い方
ここからは実際の数式でFALSE関数の使い方を見ていきましょう。
そのまま論理値FALSEを返す
一番シンプルな使い方です。セルに =FALSE() と入力してみてください。
=FALSE()
結果はセルに「FALSE」と表示されます。右寄せで表示されていれば論理値、左寄せで表示されていれば文字列です。見分けるポイントですよ。
IF関数の「条件不成立」の戻り値として使う
IF関数の第3引数(条件不成立時の戻り値)にFALSEを返したい場面があります。
=IF(A2>=80, TRUE(), FALSE())
A2が80以上ならTRUE、未満ならFALSEを返します。ただし、これは =IF(A2>=80, TRUE, FALSE) や =A2>=80 と同じ結果なんですよ。実務ではシンプルに後者で書くことが多いです。
フラグ管理の初期値として使う
タスク管理表で「完了フラグ」の初期値を一括設定するときにも使えます。
=FALSE()
A列の全行に =FALSE() を入れておけば、未完了の初期状態を作れます。チェックボックスを使う場合は、メニューの「挿入→チェックボックス」のほうが便利ですけれどね。
=FALSE() と FALSE と 0 の違い・使い分け
FALSE関数を学ぶうえで一番モヤッとするのが、この3つの違いです。表で整理してみましょう。
3パターン比較表
| 書き方 | 種類 | 数式内での扱い | セル表示 |
|---|---|---|---|
=FALSE() | 関数式 | 論理値FALSE | FALSE(右寄せ) |
FALSE | 論理値リテラル | 論理値FALSE | FALSE(右寄せ) |
0 | 数値 | 数値0 | 0(右寄せ) |
="FALSE" | 文字列 | 文字列 | FALSE(左寄せ) |
数式の中では FALSE だけで十分動きます。=FALSE() の関数形式は冗長ですが、間違いではありません。
使い分けの判断基準
迷ったときは次の基準で選んでみてください。
- 数式内で論理値を指定したい →
FALSEでOK - 他ソフトからのコピペで
=FALSE()がある → そのまま残してもOK - 数値の0として扱いたい →
0を直接書くか、FALSE*1で変換
実務では =FALSE() をわざわざ書く場面はほとんどありません。Excel由来の古い数式で見かけたら「ああ、FALSE関数ね」と理解できれば十分ですよ。
TIP
文字列の
"FALSE"(ダブルクォーテーション付き)は論理値ではなく文字列扱いです。=IF(A1=FALSE, "OK", "NG")の比較では別物になるので注意しましょう。
FALSE関数と論理値の応用テクニック
FALSE関数の真価は、論理値FALSEが数値の0として扱える性質にあります。
FALSE = 0、TRUE = 1 の性質を使う
論理値を数値演算に混ぜると、FALSEは0、TRUEは1として扱われます。
=FALSE()+TRUE() → 1
=FALSE()*5 → 0
=TRUE()-FALSE() → 1
この性質を使うと、条件を満たさない行を除外する数式が書けます。
条件を満たさない行数を数える
A列の数値が50以下の行数を数えたい場合の例です。
=SUMPRODUCT((A1:A10>50)*1)
A1:A10>50 は各セルごとにTRUE/FALSEを返します。TRUEが1、FALSEが0として扱われるので、合計すると条件を満たす行数が得られます。逆に「条件を満たさない行」を数えるなら、不等号を反転させましょう。
TIP
同じことはCOUNTIF関数でもできます。複数条件を一気に処理したいときはSUMPRODUCTが柔軟ですよ。
VLOOKUPの第4引数としてのFALSE(実務の定番)
VLOOKUP関数の第4引数に FALSE を指定すると、完全一致検索になります。実務でVLOOKUPを使うときは、ほぼこの書き方ですよ。
=VLOOKUP(A2, 商品マスタ!A:C, 2, FALSE)
- FALSE: 完全一致(ID検索など。実務の定番)
- TRUE: 近似一致(範囲別の判定に使う)
商品IDから商品名を引く、社員番号から氏名を引くなど、ID完全一致で検索したい場面ではFALSE一択です。TRUEを指定すると範囲検索になり、思わぬ値が返ってくることがあるので気をつけましょう。
NOTE
この第4引数の
FALSEは「FALSE関数」ではなく「論理値FALSEリテラル」です。混同されやすいですが、別物と理解しておきましょう。
IFERRORの代替値としてFALSEを返す
エラーが出たときに「該当なし」を表現したいときも便利です。
=IFERROR(VLOOKUP(A2, マスタ!A:B, 2, FALSE), FALSE)
検索でヒットしなかったらFALSEを返します。後続の数式で「FALSEなら未登録」と判定できるんですよ。
チェックボックスの未チェックを集計する
スプレッドシートのチェックボックス機能(挿入→チェックボックス)の値は、内部的にTRUE/FALSEで管理されています。未チェックの数を数えたいときに便利です。
=COUNTIF(A1:A10, FALSE)
タスク管理シートで「未完了タスク数」を把握したいときに活躍します。完了率を出すなら =COUNTIF(A1:A10, TRUE)/COUNTA(A1:A10) のように組み合わせましょう。
よくある疑問とエラー対処
FALSE関数は単純な関数ですが、いくつか混乱しやすいポイントがあります。
疑問・エラー一覧
| 疑問・症状 | 原因 | 対処法 |
|---|---|---|
=FALSE() と FALSE どちらを使えばいい? | どちらも同じ結果 | 数式内では FALSE で十分 |
| セルに FALSE と入力したら自動で論理値になった | スプレッドシートの仕様 | 文字列にしたい場合は 'FALSE(アポストロフィ付き) |
| #N/A エラーが出る | FALSE関数に引数を渡している | =FALSE(0) → =FALSE() に修正 |
IF(A1="FALSE", ...) が動かない | 文字列と論理値の比較 | IF(A1=FALSE, ...) に修正 |
| VLOOKUPで意図しない値が返る | 第4引数のFALSE指定漏れ | VLOOKUP(..., FALSE) を明示する |
| 計算結果に0が混じる | FALSEを数値演算に使った結果 | 論理値として残したいときは *1 を外す |
文字列と論理値を混同しない
セルに FALSE と表示されていても、中身が論理値か文字列かで挙動が変わります。
- 右寄せ表示 → 論理値FALSE
- 左寄せ表示 → 文字列”FALSE”
文字列の場合は変換が必要です。=IF(A1="FALSE", FALSE, TRUE) のように書くと論理値に変換できます。
アポストロフィの罠
セルに 'FALSE と入力すると、アポストロフィが文字列化を指示する記号として働きます。その結果、論理値ではなく文字列として保存されてしまうんですよ。気づかずに論理演算するとうまくいかないので注意しましょう。
VLOOKUPの第4引数を省略するとどうなる?
VLOOKUPで第4引数を省略すると、初期値はTRUE(近似一致)扱いになります。完全一致を期待しているのに、勝手に近い値が返ってきて混乱するケースが多いんですね。VLOOKUPを書くときは、FALSEを明示する習慣をつけておきましょう。
FALSE関数と関連する論理関数
スプレッドシートの論理関数には、FALSE以外にもよく使う仲間がいます。
実務で使用頻度が高いのはIF・AND・ORです。TRUE/FALSE単体は「論理値の仕組みを理解する基礎」として押さえておけば十分ですよ。
まとめ
スプレッドシートのFALSE関数は、論理値FALSEを返すだけのシンプルな関数です。
- 引数なしで
=FALSE()と書くと論理値FALSEを返す - 数式内では
FALSE(関数なし)と書けば同じ結果 - FALSEは数値の0、TRUEは1として扱える
- VLOOKUPの第4引数のFALSEは完全一致検索を意味する(実務の定番)
- チェックボックスの未チェック値もFALSE
FALSE関数そのものを書く機会は少ないかもしれません。ですが、論理値FALSEの仕組みを理解しておくと、VLOOKUPの完全一致指定やチェックボックス集計、IFERRORの代替値など幅広い場面で役立ちますよ。
FALSE関数とセットで覚えておきたいのがTRUE関数です。論理値TRUEを返す対の関数なので、両方を理解しておくと論理演算の基礎が一気に固まりますよ。
