スプレッドシートのGTE関数の使い方|>=との違いと以上判定

スポンサーリンク

スプレッドシートで「売上が目標以上なら達成」と判定したい場面はよくありますよね。関数一覧で 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 が大きいTRUETRUE
value1 と value2 が等しいFALSETRUE
value1 が小さいFALSEFALSE

「目標ちょうども達成」なら GTE、「記録をはっきり上回ったときだけ」なら GT と覚えておけば迷いません。GT・LT・EQ など、比較演算子を関数で書くシリーズの一覧はスプレッドシートのGT関数の使い方にまとめています。

GTE関数と >= 演算子の違い・どちらを使うべきか

結果が同じなら、どちらで書くかは読みやすさと運用の都合で決まります。5つの観点で比べてみましょう。

GTE と >= の使い分け早見表

観点GTE関数>= 演算子
結果>= と同じ TRUE / FALSEGTE と同じ
読みやすさ関数名で「以上」と伝わる短く、記号を見ればすぐ分かる
入れ子のしやすさ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>=60TRUE
わずかに下回る=GTE(59.9999, 60)=59.9999>=60FALSE
日付同士=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>=0TRUE
空白セルと “”=GTE(E1, "")=E1>=""TRUE
空白セルと 60=GTE(E1, 60)=E1>=60FALSE
文字列と数値=GTE("abc", 60)="abc">=60TRUE
文字列の数字=GTE("50", 60)="50">=60TRUE
文字列同士=GTE("b", "a")="b">="a"TRUE
TRUE と 1=GTE(TRUE, 1)=TRUE>=1TRUE

どの行も、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 との違いを小さな表で比べてみましょう。

観点GTEGESTEP
返り値TRUE / FALSE1 / 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 が出ていないかも、あわせて確かめておくと安心です。

タイトルとURLをコピーしました