スプレッドシートで「売上が目標以上なら達成」と判定したい場面はよくありますよね。関数一覧で GTE関数 を見つけて、「>= と何が違うの?」と手が止まった人もいるはずです。
結果はどちらも同じでも、空白セルや文字列の数字が混ざると話は別です。エラーが出ないまま想定外の TRUE が返り、達成件数がずれることもあります。
この記事では、Googleスプレッドシートの GTE関数の構文と、>= 演算子とどちらを使うべきかを整理します。日付・文字列・空白セルを比べたときの判定結果表と、IF・FILTER で使えるコピペ用の数式もまとめました。
スプレッドシートのGTE関数とは?構文と基本の使い方
結論から言うと、=GTE(A2, 60) は =A2>=60 と同じ「以上」判定です。60 ちょうども TRUE になるのがポイント。
GTE は Greater Than or Equal to(以上)の略で、「ジーティーイー」と読みます。Google の公式ヘルプでも、>= 演算子と同等の関数として紹介されています。
GTE関数の構文と引数・返り値
構文はとてもシンプルで、引数は2つだけ。
=GTE(value1, value2)
| 引数 | 必須 | 内容 |
|---|---|---|
| value1 | 必須 | value2 以上かを調べたい値(左辺) |
| value2 | 必須 | 比べる相手の値(右辺) |
返り値は論理値(TRUE / FALSE)です。value1 が value2 以上なら TRUE、それ以外なら FALSE が返ります。
3つ以上の値をまとめて比べる引数はありません。「60 以上かつ 80 未満」のような範囲の判定は、あとで紹介する AND や COUNTIFS と組み合わせるのが定番です。
基本の使い方(数値・セル同士・日付)
数値を直接入れる書き方と、セル同士を比べる書き方を並べてみましょう。
=GTE(75, 60) → TRUE
=GTE(60, 60) → TRUE(同じ値も「以上」に入る)
=GTE(45, 60) → FALSE
=GTE(B2, C2) → B2 が C2 以上なら TRUE
=GTE(A2, TODAY()) → A2 の日付が今日以降なら TRUE
日付はスプレッドシートの内部では数値(シリアル値)として扱われます。そのため DATE 関数や TODAY 関数の結果も、数値と同じように比べられるのが便利なところ。
「締め切り当日を含めて、今日以降の予定か」を確かめたいときに使えます。当日を含めたくない場合は、次の GT関数の出番ですね。
GT関数との違いは「同じ値を含むか」だけ
GTE と GT の違いは、2つの値が等しいときの結果だけです。
| 比べた結果 | GT(より大きい) | GTE(以上) |
|---|---|---|
| value1 が大きい | TRUE | TRUE |
| value1 と value2 が等しい | FALSE | TRUE |
| value1 が小さい | FALSE | FALSE |
「目標ちょうども達成」なら GTE、「記録をはっきり上回ったときだけ」なら GT と覚えておけば迷いません。GT・LT・EQ など、比較演算子を関数で書くシリーズの一覧はスプレッドシートのGT関数の使い方にまとめています。
GTE関数と >= 演算子の違い・どちらを使うべきか
結果が同じなら、どちらで書くかは読みやすさと運用の都合で決まります。5つの観点で比べてみましょう。
GTE と >= の使い分け早見表
| 観点 | GTE関数 | >= 演算子 |
|---|---|---|
| 結果 | >= と同じ TRUE / FALSE | GTE と同じ |
| 読みやすさ | 関数名で「以上」と伝わる | 短く、記号を見ればすぐ分かる |
| 入れ子のしやすさ | IF の中に入れるとカッコが増える | 短いまま書ける |
| 配列での挙動 | ARRAYFORMULA・FILTER の中で範囲を渡せる | 同じく範囲を渡せる |
| Excel への移植性 | Excel の関数一覧にない | Excel でも同じ書き方で動く |
普段の手入力なら、短く書ける >= で十分です。記号1つで済むので、IF や AND の中に入れても数式が長くなりません。
GTE を選ぶ価値があるのは、記号に慣れていない人と共有するシートでしょう。関数名で「以上を判定している」と読み取れるので、数式の意図が伝わりやすくなります。
引き算の MINUS関数なども、同じ「演算子を関数で書く」仲間です。考え方はスプレッドシートで引き算する方法|MINUS関数と「-」の違いでも紹介しています。
Excel と行き来するシートは >= が安全(ExcelにGTEはない)
対応バージョン: GTE は Google スプレッドシートの関数です。Excel の関数一覧には GTE は見当たらないため、Excel では
>=を使います。
Excel 形式(.xlsx)で書き出して渡すシートや、Excel ユーザーと共同で使う表では注意しましょう。GTE で書いた数式は、Excel 側で正しく計算されないおそれがあります。
最初から >= で書いておけば、どちらのアプリでも同じ数式のまま使えます。Sheets の中だけで完結するシートなら、GTE を使っても問題ありません。
日付・文字列・空白セルを比べたときの結果
ここが本記事でいちばん伝えたいポイント。GTE は数値以外を渡してもエラーになりにくく、黙って TRUE / FALSE を返します。
境界値・型の判定結果表(GTE と >= を並べて比較)
同じ値を GTE と >= の両方で比べた結果を、1つの表にまとめました。E1 は何も入力していない空白セルです。
| 比べる内容 | GTE の数式 | >= の数式 | 結果 |
|---|---|---|---|
| 数値の同値 | =GTE(60, 60) | =60>=60 | TRUE |
| わずかに下回る | =GTE(59.9999, 60) | =59.9999>=60 | FALSE |
| 日付同士 | =GTE(DATE(2026,10,1), DATE(2026,9,30)) | =DATE(2026,10,1)>=DATE(2026,9,30) | TRUE |
| 日付と文字列の日付 | =GTE(DATE(2026,10,1), "2026/10/1") | =DATE(2026,10,1)>="2026/10/1" | FALSE |
| 空白セルと 0 | =GTE(E1, 0) | =E1>=0 | TRUE |
| 空白セルと “” | =GTE(E1, "") | =E1>="" | TRUE |
| 空白セルと 60 | =GTE(E1, 60) | =E1>=60 | FALSE |
| 文字列と数値 | =GTE("abc", 60) | ="abc">=60 | TRUE |
| 文字列の数字 | =GTE("50", 60) | ="50">=60 | TRUE |
| 文字列同士 | =GTE("b", "a") | ="b">="a" | TRUE |
| TRUE と 1 | =GTE(TRUE, 1) | =TRUE>=1 | TRUE |
どの行も、GTE と >= の結果はそろう想定です。つまり「GTE なら安全」「>= なら安全」という差はないと考えてよいでしょう。
注意したいのは、数値と文字列を比べた行です。スプレッドシートの比較では、文字列は数値より大きい扱いになります。そのため "50" のような文字列の数字も、60 以上と判定されてしまうのが落とし穴。
日付と文字列の日付の行も同じ理屈です。"2026/10/1" は見た目が日付でも、ダブルクォートで囲むと文字列として比べられます。
空白セルは 0 として扱われるため、0 以上の判定では TRUE になります。60 以上の判定なら FALSE なので、未入力の行は合格になりにくい仕組みです。
想定外の TRUE を防ぐ書き方(空白の除外・文字列の日付)
困るのは「未提出」のような文字が点数欄に入ったケース。=GTE(B2, 60) は TRUE を返し、未提出の人が合格扱いになります。
目標値のセルが空白のときも要注意。=GTE(B2, C2) で C2 が空白なら、0 以上の判定になってほぼ全行が TRUE です。
数値が入っているときだけ判定したいなら、ISNUMBER と AND を組み合わせます。
=AND(ISNUMBER(B2), GTE(B2, 60))
=AND(ISNUMBER(B2), ISNUMBER(C2), GTE(B2, C2))
1本目は、B2 が数値でなければ FALSE を返します。文字列・空白のどちらも、まとめて除外できるのが利点です。複数条件の書き方はスプレッドシートのAND関数|IF組み合わせと複数条件を解説で詳しく解説しています。
文字列の日付と比べたいときは、DATEVALUE で日付の値に直してから渡しましょう。
=GTE(A2, DATEVALUE("2026/10/1"))
=GTE(A2, DATE(2026, 10, 1))
基準日を数式に直接書くなら、2本目の DATE 関数を使うほうが確実です。CSV から取り込んだ日付が文字列のままのときは、A2 側も DATEVALUE で直しておきます。
IF・条件付き書式・FILTER・ARRAYFORMULA と組み合わせる実務例
ここからは、売上目標(100万円)の達成判定を例に、コピペで使える数式を紹介します。サンプルの表は次のとおりです。
| 行 | A: 担当者 | B: 売上(万円) |
|---|---|---|
| 2 | 佐藤 | 120 |
| 3 | 鈴木 | 100 |
| 4 | 高橋 | 95 |
| 5 | 田中 | 135 |
| 6 | 伊藤 | 99 |
| 7 | 渡辺 | 100 |
IF で「達成/未達」のラベルを付ける
TRUE / FALSE のままでは見づらいので、IF関数で文字に置き換えます。C2 に入れて下へコピーしましょう。
=IF(GTE(B2, 100), "達成", "未達")
佐藤・鈴木・田中・渡辺の4人が「達成」、高橋・伊藤の2人が「未達」になります。鈴木さんと渡辺さんはちょうど100万円ですが、「以上」なので達成側です。
演算子で書くなら =IF(B2>=100, "達成", "未達") で、結果は同じになります。IF の基本はスプレッドシートのIF関数の使い方|条件分岐を基本から解説を参考にしてください。
条件付き書式で基準以上の行に色を付ける
達成した行全体に色を付けたいときは、条件付き書式の「カスタム数式」を使います。範囲を A2:B7 にして、次の数式を入れてください。
=GTE($B2, 100)
列番号の前に $ を付けるのがコツです。こうすると、A 列のセルも B 列の売上を見て判定するため、行ごとまとめて色が付きます。
基準値を F1 などのセルに置く場合は =GTE($B2, $F$1) と書きましょう。ただし F1 が空白だと 0 以上の判定になり、全行に色が付く点には気をつけてください。
FILTER・ARRAYFORMULA で範囲をまとめて判定する
FILTER の条件の中では、GTE に範囲をそのまま渡せます。目標以上の担当者だけを抜き出すなら、次の1本で足ります。
=FILTER(A2:B7, GTE(B2:B7, 100))
結果は佐藤(120)・鈴木(100)・田中(135)・渡辺(100)の4行です。=FILTER(A2:B7, B2:B7>=100) と書いても同じ行が返ります。抽出の応用はスプレッドシートのFILTER関数の使い方|条件抽出を自動化する実務7パターンへどうぞ。
1つのセルから判定結果を縦に並べたいなら、ARRAYFORMULA で包みます。
=ARRAYFORMULA(GTE(B2:B7, 100))
C2 に入れると、C2:C7 に TRUE・TRUE・FALSE・TRUE・FALSE・TRUE が並びます。ARRAYFORMULA を付けずに =GTE(B2:B7, 100) と書くと #VALUE! エラーになるので注意しましょう。
行数が数千を超える表で、抽出と集計を一度にしたいときは QUERY関数も候補です。書き方はスプレッドシートのQUERY関数の使い方|SQLライクなデータ操作で紹介しているので、あわせてどうぞ。
以上の件数を数えるなら COUNTIF、1/0 で足すなら GESTEP
達成した人数だけ知りたいなら、GTE より COUNTIF のほうが手軽です。条件は ">=100" のように文字列で渡します。
=COUNTIF(B2:B7, ">=100") → 4
=COUNTIFS(B2:B7, ">=100", B2:B7, "<120") → 2
2本目は「100万円以上かつ120万円未満」の件数で、鈴木さんと渡辺さんの2人が当てはまります。条件の書き方はスプレッドシートのCOUNTIF関数の使い方|条件の書き方一覧を参考にしてください。複数条件ならスプレッドシートのCOUNTIFS関数の使い方|複数条件カウントが詳しいですよ。
各行に判定を残しつつ足し算もしたい場合は、1/0 で返す GESTEP関数が便利です。GTE との違いを小さな表で比べてみましょう。
| 観点 | GTE | GESTEP |
|---|---|---|
| 返り値 | TRUE / FALSE | 1 / 0 |
| そのまま SUM で数える | 変換が必要(*1 など) | そのまま足せる |
| 文字列を渡したとき | エラーにならず判定される("50" も TRUE) | 数字の文字列("50")は数値として扱われ、"abc" のような文字は #VALUE! になる |
1/0 の結果を合計に使いたいなら GESTEP が向いています。使い方はスプレッドシートのGESTEP関数の使い方|閾値以上を0と1で判定するをご覧ください。
よくある質問とまとめ
GTE と >= で結果が違うことはある?
公式ヘルプでは、GTE は >= と同等とされています。判定結果表でも、空白・文字列・日付を比べた結果はそろう想定です。違いは書き方と、Excel で使えるかどうかだけです。
ExcelでGTE関数は使える?
Excel の関数一覧には GTE は見当たりません。Excel では >= 演算子を使いましょう。Excel と行き来するシートも、最初から >= で書いておくのが安全です。
GTE関数に範囲を渡せる?
FILTER の条件や ARRAYFORMULA の中なら、GTE(B2:B7, 100) のように範囲を渡せます。どちらにも入れずにセルへ直接書くと #VALUE! エラーになるので気をつけてください。
GT・GESTEP との違いは?
GT は「より大きい」判定で、同じ値のときは FALSE を返します。GESTEP は同じ「以上」判定ですが、結果が 1 / 0 の数値です。同値を含めるかは GT、合計に使うかは GESTEP、という基準で選ぶと迷いません。
まとめ
- GTE関数は
=GTE(value1, value2)で「以上」を判定し、TRUE / FALSE を返す =GTE(A2, 60)は=A2>=60と同じ結果で、60 ちょうども TRUE- 普段は
>=で十分。関数名で意図を伝えたいシートなら GTE も選べる - 文字列は数値より大きい扱いのため、
"50"や「未提出」も TRUE になりうる - 空白や文字列を除外したいときは
AND(ISNUMBER(B2), GTE(B2, 60)) - IF・条件付き書式・FILTER・ARRAYFORMULA の中でもそのまま使える
- Excel には GTE がないので、Excel と行き来するシートは
>=で書く
まずは自分の表で、GTE と >= を並べて結果を見比べてみてください。空白や文字列が混ざった行で想定外の TRUE が出ていないかも、あわせて確かめておくと安心です。