スプレッドシートのEVEN関数の使い方|偶数に切り上げ

スポンサーリンク

スプレッドシートで「この数を偶数に揃えたいんだけど、どうすればいいの?」と思ったことはありませんか?

2個セットの梱包数を決めるとき、ペアワークの人数を揃えるとき。手作業で偶数に直すのは面倒ですし、ミスも起きがちです。

そんなときに便利なのがEVEN関数です。数値を偶数に切り上げてくれるシンプルな関数ですよ。

この記事では基本の書き方からODD関数との違い、CEILING・MROUNDとの使い分けまで解説します。

EVEN関数とは?

EVEN関数(読み方: イーブン関数)は、数値をいちばん近い偶数に切り上げる関数です。

名前は英語の「even(偶数の・均等な)」に由来しています。たとえば「3」にEVEN関数をかけると「4」になります。すでに偶数の「6」を渡すとそのまま「6」です。

EVEN関数にできることをまとめると、次のとおりです。

  • 奇数や小数を次の偶数に切り上げる
  • すでに偶数ならそのままの値を返す
  • 0を渡すと0が返る(0は偶数)
  • 負の数は0から離れる方向に切り上げる

NOTE

EVEN関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。

EVEN関数の書き方(構文と引数)

基本構文

=EVEN(値)

カッコの中に「偶数に切り上げたい数値」を指定します。引数は1つだけです。

引数の説明

引数必須/任意説明
必須偶数に切り上げたい数値やセル参照、数式

直接入力・セル参照・他の関数の結果など、数値として扱えるものなら何でも指定できます。

EVEN関数の基本的な使い方

正の数を偶数に切り上げる

もっともシンプルな使い方です。

=EVEN(3)

結果は「4」です。3は奇数なので、次の偶数である4に切り上がります。

=EVEN(5.1)

結果は「6」です。小数も同じように、次の偶数まで切り上げられます。

すでに偶数の場合

=EVEN(8)

結果は「8」です。すでに偶数なら、そのままの値が返ります。

セル参照で指定する

A1に「11.5」が入っているとします。

=EVEN(A1)

結果は「12」です。セル参照でも同じように使えます。実務ではこちらの書き方がメインになるでしょう。

0を渡した場合

=EVEN(0)

結果は「0」です。0は偶数なのでそのまま返ります。ODD関数では0を渡すと1になるので、ここが大きな違いです。

実務でのEVEN関数活用例

2個セットの梱包数を確保する

商品を2個セットで梱包するとき、数量を偶数に揃えたい場合があります。B2に注文数量が入っているとします。

=EVEN(B2)

たとえばB2が「13」なら結果は「14」です。「10」ならそのまま「10」が返ります。梱包に必要な偶数をサッと求められます。

ペアワークの人数を確保する

2人1組の作業を割り振るとき、参加人数を偶数に切り上げたい場面です。

=EVEN(B2)

B2が「15」なら結果は「16」です。余分に1名確保するイメージですね。あぶれる人が出ないよう、偶数に揃えてから組を決めると安心です。

偶数チェックはMOD関数で

数値が偶数かどうかを「判定」したいときは、EVEN関数ではなくMOD関数を使います。

=MOD(A1, 2)

結果が「0」なら偶数、「1」なら奇数です。EVEN関数は「切り上げ」であって「判定」ではない点に注意してください。

TIP

偶数判定にはISEVEN関数を使う方法もあります。=ISEVEN(A1) で TRUE / FALSE が返ります。

EVEN関数の負の数の扱い

ここがEVEN関数でもっとも注意すべきポイントです。

負の数は「0から離れる方向」に切り上がる

EVEN関数は正の数も負の数も、0から遠ざかる方向で切り上げます。数直線で見ると、絶対値が大きくなる側の偶数を返します。

=EVEN(-3)

結果は「-4」です。「-2」ではない点に注意してください。-3より絶対値が大きい偶数は-4です。

正の数と負の数の挙動比較

元の値EVEN(値)説明
34次の偶数に切り上げ
5.16次の偶数に切り上げ
88すでに偶数なのでそのまま
00偶数なのでそのまま
-3-40から離れる方向に切り上げ
-5.1-60から離れる方向に切り上げ
-8-8すでに偶数なのでそのまま

INT関数が「負の無限大方向」に丸めるのと似た考え方です。EVEN関数は必ず偶数を返す点が違います。

よくあるエラーと対処法

EVEN関数はシンプルな関数ですが、エラーが出ることもあります。

エラー原因対処法
#VALUE!値に文字列が入っているセル参照先が数値かどうか確認する
#ERROR!構文ミス(カッコ忘れ等)数式の入力内容を見直す
結果が想定と違う負の数の方向を誤解「0から離れる方向」に切り上がる仕様を確認

文字列が混在しているとき

EVEN関数に文字列を渡すと#VALUE!エラーになります。

=EVEN("abc")

セル参照先が数値かどうか不安なときは、ISNUMBER関数で事前にチェックできます。

=IF(ISNUMBER(A1), EVEN(A1), "数値を入力してください")

負の数の結果が想定と違うとき

=EVEN(-3) が「-2」ではなく「-4」になるのは正常な動作です。0に近い偶数が欲しい場合は、絶対値をEVEN関数で処理してから符号を戻す方法があります。

=SIGN(A1) * EVEN(ABS(A1))

ただしこの書き方は、正の数の切り上げと方向が逆になります。用途に合わせて使い分けてください。

ODD関数・CEILING関数との違い・使い分け

EVEN関数と混同しやすい関数を比較表で整理します。

関数切り上げ先引数の数用途
EVEN偶数1偶数に切り上げたいとき
ODD奇数1奇数に切り上げたいとき
CEILING指定した倍数2任意の倍数に切り上げたいとき
MROUND指定した倍数(四捨五入)2倍数単位で四捨五入したいとき
ROUNDUP指定した桁数2桁数を指定して切り上げたいとき
INT整数(切り捨て)1小数を整数に切り捨てたいとき

EVENとODDの違い

EVEN関数とODD関数は、切り上げ先が「偶数」か「奇数」かの違いだけです。構文も引数の数も同じです。

元の値EVENODD
343
445
5.167
001
-3-4-3

0を渡したときの違いがポイントです。EVEN(0)は「0」(0は偶数)、ODD(0)は「1」(0は偶数なので次の奇数)です。

EVENとCEILINGの使い分け

EVEN関数は「偶数(2の倍数)への切り上げ」専用です。CEILING関数は任意の倍数を指定できます。

=EVEN(3)           → 4(2の倍数に切り上げ)
=CEILING(3, 2)     → 4(2の倍数に切り上げ、EVENと同じ結果)
=CEILING(3, 5)     → 5(5の倍数に切り上げ)
=CEILING(3, 10)    → 10(10の倍数に切り上げ)

「偶数に切り上げたい」だけならEVEN関数が引数1つでシンプルです。「5の倍数」「10の倍数」など自由に指定したいならCEILING関数を使いましょう。

TIP

=EVEN(A1)=CEILING(A1, 2) は正の数では同じ結果です。ただし負の数での丸め方向が異なる場合があるので、負の数を扱うときは結果を確認してください。

EVENとMROUNDの使い分け

MROUND関数は指定した倍数に「四捨五入」で丸めます。EVEN関数は「切り上げ」のみです。

=EVEN(3)       → 4(切り上げ)
=MROUND(3, 2)  → 4(四捨五入 → 3は2と4の中間より上なので4)
=EVEN(1)       → 2(切り上げ)
=MROUND(1, 2)  → 2(四捨五入 → 1は0と2の中間なので2)

「常に偶数以上に切り上げたい」ならEVEN関数です。「偶数に近いほうに丸めたい」ならMROUND関数を使いましょう。

Excelとの違い

EVEN関数はExcelとGoogleスプレッドシートで完全に同じ動作です。

項目ExcelGoogleスプレッドシート
構文=EVEN(数値)=EVEN(値)
動作偶数に切り上げ偶数に切り上げ
負の数-3→-4-3→-4
000

引数名の表記が若干異なるだけで、機能は完全に同じです。ExcelとSheetsでファイルを共有しても計算結果がずれることはありません。

TIP

Excel版の解説はExcelのEVEN関数の使い方の記事で詳しく紹介しています。丸め関数の使い分けについてはExcelの丸め関数10種を完全比較もチェックしてみてください。

まとめ

EVEN関数は、数値を偶数に切り上げるシンプルな関数です。

ポイントを整理します。

  • 構文は =EVEN(値) の1引数だけ
  • すでに偶数ならそのまま、奇数や小数は次の偶数に切り上がる
  • 0を渡すと0が返る(ODD関数の0→1とは異なる)
  • 負の数は「0から離れる方向」に切り上がる(-3 → -4)
  • 「偶数に揃えたい」→ EVEN関数、「任意の倍数に揃えたい」→ CEILING関数
  • 偶数の判定にはISEVEN関数やMOD関数を使う

まずは =EVEN(A1) でセルの値を偶数に変換するところから試してみてください。

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