Excelで「人数を偶数に揃えたい」「梱包の箱数を2個セットで確保したい」「2列レイアウトのテーブル行数を偶数にしたい」——そんな場面で数値をサッと偶数にしてくれるのがEVEN関数です。
引数は1つだけでシンプルですが、実は負の数での挙動に勘違いが起きやすい関数でもあります。=EVEN(-3) の結果が「-2」だと思っていたら「-4」が返ってきて驚いた経験はありませんか。
この記事では、EVEN関数の基本構文から負の数の仕様、2個セット梱包やペア座席割当などの実務シーン、ODD・CEILING・MROUNDとの使い分けまで、現場で迷わないレベルまで掘り下げて紹介します。
この記事は次のような人におすすめ
- Excelで数値を偶数ぴったりに揃えたい
- EVEN関数の負の数での挙動が想定と違って困っている
- EVEN・ODD・CEILINGのどれを使えばいいか迷っている
- Googleスプレッドシートでも同じ動きをするか確認したい
EVEN関数とは?どんな場面で使うのか
EVEN(イーブン)関数は、数値を0から遠ざかる方向でいちばん近い偶数に切り上げる関数です。名前の「even」は英語で「偶数の・均等な」という意味ですね。
具体的には =EVEN(3) なら「4」、=EVEN(5.1) なら「6」、=EVEN(8) はすでに偶数なので「8」のまま、といった結果になります。四捨五入ではなく、常に「偶数方向に切り上げる」のがポイントです。
こんなシーンで活躍します
EVEN関数が本領を発揮するのは、数量・人数・行数を「偶数ぴったり」に揃えたいときです。
- 2個セットで梱包する商品の数量を偶数に確保したい
- ペア座席やチーム編成で参加者数を偶数に切り上げたい
- 2列レイアウトの表で行数を偶数にしてバランスを取りたい
- 連番やコマ割りを偶数始まりで設計したい
四捨五入や切り捨てだと奇数が出てしまうので、「必ず偶数」という制約があるならEVEN関数一択という場面は意外と多いですね。
対応バージョン
EVEN関数はExcel 2007以降のすべてのバージョンで使えます。Microsoft 365・Excel for Web・Excel for Mac・Excel Mobileのどこでも同じ動作です。Googleスプレッドシートでも完全互換なので、ExcelからSheetsへの移行でも挙動が変わりません。
EVEN関数の構文と引数
基本構文
=EVEN(数値)
引数は1つだけ。ODD関数と同じシンプルな構造で、CEILING関数(2引数)よりもサッと書けます。
引数の詳細
| 引数 | 必須/任意 | 内容 |
|---|---|---|
| 数値(number) | 必須 | 偶数に切り上げたい数値。直接入力・セル参照・数式の結果のいずれもOK |
数値として評価できるものなら何でも渡せます。たとえば =EVEN(A1+B1) のような計算結果や、=EVEN(COUNTIF(...)) のような関数の戻り値でも問題なく動きます。
返り値
引数を0から遠ざかる方向に切り上げた「もっとも近い偶数の整数」が返ります。すでに偶数の整数なら、元の値がそのまま返ります。
EVEN関数の基本的な使い方
ここからは、EVEN関数の動きを数値パターン別に順番に見ていきましょう。
正の整数を渡した場合
もっとも基本的なケースです。
=EVEN(3)
結果は「4」。3は奇数なので、次の偶数である4に切り上がります。
=EVEN(7)
結果は「8」。7の次の偶数は8ですね。
正の小数を渡した場合
=EVEN(5.1)
結果は「6」。5.1より大きい最小の偶数である6が返ります。
=EVEN(2.1)
結果は「4」。2.1は2よりわずかに大きいだけですが、「2より大きい値は次の偶数まで切り上げ」というルールに従って4が返ります。ここは四捨五入の感覚と違うので注意です。
すでに偶数の整数を渡した場合
=EVEN(8)
結果は「8」。すでに偶数の整数なら、元の値がそのまま返ります。切り上げは発生しません。
0を渡した場合
=EVEN(0)
結果は「0」。0は偶数扱いなので、そのまま0が返ります。
この挙動はODD関数と対照的です。=ODD(0) は「1」を返すため、0を「偶数として扱うか・1として扱うか」で両者は分かれます。
セル参照で指定する
実務ではセル参照で使うのがメインです。A1セルに「11.5」が入っているとしましょう。
=EVEN(A1)
結果は「12」。セル参照でも同じ挙動です。A列に数値が並んでいるなら、B列にこの数式を入れてオートフィルすれば一括で偶数化できます。
他の関数の結果を渡す
EVEN関数は他の関数の戻り値も受け取れます。
=EVEN(SUM(A1:A10))
A1:A10の合計を偶数に切り上げ。合計が「23」なら結果は「24」です。集計値をそのまま梱包数に使うような場面で便利ですね。
負の数でのEVEN関数の挙動
ここがEVEN関数でもっとも勘違いされやすいポイントです。結論からいうと、負の数は「0から遠ざかる方向」に切り上がります。
数直線でイメージしてみる
数直線上の「0」を基準にすると、EVEN関数は絶対値が大きくなる方向に動きます。
- 正の数 → 右側(絶対値が大きくなる)方向の偶数へ
- 負の数 → 左側(絶対値が大きくなる)方向の偶数へ
つまり「0から離れる」方向ですね。
具体例
=EVEN(-3)
結果は「-4」。-3の絶対値は3、その次の偶数は4で、符号を戻して-4になります。「-2」ではない点に注意してください。
=EVEN(-5.1)
結果は「-6」。同じく0から遠ざかる方向なので、絶対値が大きい-6が返ります。
=EVEN(-8)
結果は「-8」。-8はすでに偶数なので、そのまま返ります。
正負の挙動まとめ表
| 数値 | EVEN(数値) | 説明 |
|---|---|---|
| 3 | 4 | 次の偶数に切り上げ |
| 5.1 | 6 | 次の偶数に切り上げ |
| 2.1 | 4 | 2より大きいので次の偶数4へ |
| 8 | 8 | すでに偶数なのでそのまま |
| 0 | 0 | 偶数扱いでそのまま |
| -3 | -4 | 0から離れる方向に切り上げ |
| -5.1 | -6 | 0から離れる方向に切り上げ |
| -2.1 | -4 | 0から離れる方向に切り上げ |
| -8 | -8 | すでに偶数なのでそのまま |
もし「0に近い偶数」が欲しい場合
「-3なら-2に、-5なら-4に丸めたい」というケースもあるでしょう。EVEN関数単体ではできないので、SIGN関数とABS関数を組み合わせます。
=SIGN(A1) * EVEN(ABS(A1)) - IF(A1<0, 2, 0)
少し複雑ですが、負の数のときだけ結果から2を引くことで、0に近い偶数に調整できます。とはいえ実務でここまで捻るケースは稀なので、「EVEN関数は0から離れる方向に動く」と覚えるのが先決ですね。
EVEN関数の実務活用パターン
基本を押さえたところで、実務で使う具体的なシーンを紹介します。
シーン1: 2個セット梱包の数量を確保する
商品を2個セットで梱包するとき、注文数を偶数に切り上げて梱包数を決めたい場合です。B2セルに注文数が入っているとします。
=EVEN(B2)
B2が「13」なら結果は「14」で、7セット分の梱包を確保できます。B2が「10」なら「10」のままなので、余剰は発生しません。
梱包箱の数を知りたければ、2で割れば一発です。
=EVEN(B2) / 2
「13個注文 → 7箱必要」といった計算がサッと出せます。
シーン2: ペア座席・チーム編成のペア数を確保する
社内イベントで2人1組のチームを組むとき、参加者数を偶数に切り上げて座席・チーム数を決めます。D2に参加者数が入っているとしましょう。
=EVEN(D2) / 2
D2が「15」なら、EVEN関数で「16」→ 2で割って「8ペア」が必要とわかります。「余分に1席・1ペア分を確保しておく」という発想ですね。
シーン3: 2列レイアウト表の行数を偶数に揃える
2列テーブルにデータを流し込むとき、行数を偶数にしてバランスを整えたい場合があります。データ件数がE2に入っているとします。
=EVEN(E2) / 2
E2が「17」なら「9行」と返り、9行×2列=18セルの器を用意すればデータ17件を2列で過不足なく並べられます。
シーン4: MOD関数と組み合わせて偶数・奇数を判定
EVEN関数は「変換」の関数なので、純粋に「偶数か奇数か判定したい」ときにはMOD関数の方が適しています。
=MOD(A1, 2)
結果が「0」なら偶数、「1」なら奇数です。IF関数と組み合わせて文言表示するとさらに便利ですね。
=IF(MOD(A1, 2)=0, "偶数", "奇数")
EVEN関数は切り上げ、MOD関数は判定。役割が違うので混同しないよう気をつけてください。
シーン5: CEILING関数とのネストで段階丸め
「偶数に切り上げたうえで、さらに10の倍数に揃えたい」といった複合要件は、EVEN関数とCEILING関数のネストで解決します。
=CEILING(EVEN(A1), 10)
A1が「7」なら、EVEN関数で「8」→ CEILING関数で「10」となります。段階的に丸めていくイメージで、ノベルティの発注数や備品の最低単位調整などで使える組み合わせです。
EVEN関数と似た関数の違い・使い分け
EVEN関数と混同しやすい関数を比較表にまとめます。
| 関数 | 切り上げ先 | 引数 | 方向 | 主な用途 |
|---|---|---|---|---|
| EVEN | 偶数 | 1 | 0から遠ざかる | 偶数に揃える |
| ODD | 奇数 | 1 | 0から遠ざかる | 奇数に揃える |
| CEILING | 指定倍数 | 2 | 0から遠ざかる | 任意倍数に切り上げ |
| INT | 整数(切り捨て) | 1 | 負の無限大 | 小数を整数に切り捨て |
| FLOOR | 指定倍数(切り捨て) | 2 | 0に近づく | 任意倍数に切り下げ |
| MROUND | 指定倍数(四捨五入) | 2 | 四捨五入 | 倍数単位で四捨五入 |
| ROUND | 指定桁数(四捨五入) | 2 | 四捨五入 | 小数桁の丸め |
選び方の3つの軸
「偶数」という強い制約があるならEVEN関数、それ以外はCEILING・FLOOR・MROUNDを使い分ける、というのが判断基準ですね。
EVEN関数が向かないケース
EVEN関数がうまくハマらないケースも押さえておきましょう。
- 偶数・奇数の判定が目的 → MOD関数を使う
- 任意の倍数に揃えたい(4・6・10など) → CEILING関数やMROUND関数
- 切り捨て(小さい方の偶数)が欲しい → 切り捨ては
FLOOR(A1, 2)で代替 - 0に近い方向に丸めたい → EVENは0から離れるので
TRUNCや工夫が必要
「必ず偶数に切り上げる」という用途にドンピシャなのがEVEN関数です。逆に言えば、それ以外の丸め要件では別の関数を選んだほうが自然ですね。
EVEN関数でよくあるエラーと対処法
#VALUE! エラー
数値として認識できない文字列を引数に渡したときに発生します。
=EVEN("abc")
セル参照のケースで起きる典型パターンは3つです。
- 全角数字が混ざっている(例: “12”)
- 前後に余計なスペースがある
- 文字列型のセルに数字が入っている(左寄せで表示される)
全角数字はASC関数で半角に変換できます。
=EVEN(ASC(A1))
スペース混入はTRIM関数で除去します。
=EVEN(TRIM(A1))
文字列型を数値に変換したいなら、VALUE関数を通す方法が確実です。
=EVEN(VALUE(A1))
結果が想定と違う(負の数の方向)
=EVEN(-3) が「-2」ではなく「-4」になるのは、先ほど解説したとおり正常動作です。バグではなく仕様なので、「0から離れる方向」という前提で数式を組み立ててください。
結果が小数にならない
EVEN関数の返り値は常に偶数の整数です。小数点以下を保持したい場合はEVEN関数は使わず、ROUND関数やMROUND関数で代替します。
空白セルを参照した場合
空白セルを渡すと「0」が返ります。
=EVEN(A1)
A1が空白なら結果は「0」です。意図せず0が並んで困るようなら、IF関数で空白チェックを入れましょう。
=IF(A1="", "", EVEN(A1))
EVEN関数に関するよくある質問
Q1. EVEN関数で-3が-4になるのはバグですか?
いいえ、仕様です。EVEN関数は「0から遠ざかる方向」に切り上げるため、負の数では絶対値が大きくなる側の偶数が返ります。-3の次の偶数は、0から見ると「-4」側に位置します。Microsoft公式ドキュメントにも同じ動作が明記されています。
Q2. 0を渡すと何が返りますか?
0がそのまま返ります。0は偶数として扱われるためです。ちなみにODD関数に0を渡すと「1」が返るので、両者の大きな違いです。
Q3. 小数点以下の値を偶数の整数に変換するには?
EVEN関数で可能です。=EVEN(3.5) は「4」、=EVEN(-3.5) は「-4」を返します。小数の値もすべて「次の偶数の整数」に切り上がります。
Q4. Googleスプレッドシートでも使えますか?
使えます。構文(=EVEN(数値))と挙動はExcelと完全に同じです。Excelで作ったシートをスプレッドシートに持ち込んでも結果は変わりません。
Q5. 偶数か奇数かを判定したい場合は?
MOD関数を使います。=MOD(A1, 2) の結果が「0」なら偶数、「1」なら奇数です。EVEN関数は「変換」の関数なので、判定には向きません。
Q6. EVEN関数とCEILING関数はどう使い分けますか?
「必ず偶数」という要件ならEVEN関数、「任意の倍数(5・10・100など)」に揃えたいならCEILING関数です。「偶数」という強い制約があるかどうかで判断してください。
Q7. 切り上げではなく「切り捨て」で偶数にしたい場合は?
EVEN関数は切り上げ専用です。切り捨てで偶数にしたい場合は、FLOOR関数を =FLOOR(A1, 2) の形で使うと、2の倍数(=偶数)に切り下げできます。
まとめ
EVEN関数は、数値を偶数ぴったりに切り上げたいときに使うシンプルで強力な関数です。
ポイントを整理します。
- 構文は
=EVEN(数値)の1引数だけ - すでに偶数ならそのまま、奇数や小数は次の偶数に切り上がる
- 0を渡すと0が返る(ODD関数の0→1とは異なる)
- 負の数は「0から離れる方向」に切り上がる(-3 → -4)
- Excel 2007以降・Microsoft 365・Googleスプレッドシートで完全互換
- 偶数・奇数の判定はMOD関数、任意倍数はCEILING関数と役割分担
まずは =EVEN(A1) で手元の数値を偶数に変換するところから試してみてください。2個セット梱包数やペアチーム人数の計算で、すぐに実務の効率化を実感できるはずです。
