Excelで「15分単位に切り上げたい」「見積金額を千円単位に繰り上げたい」といった場面はありませんか。ROUNDUP関数でも桁数を指定すれば切り上げはできます。ただ「5の倍数」や「15分刻み」のような任意の倍数にはちょっと不向きです。
CEILING関数を使えば、好きな倍数を指定して切り上げ方向に丸められます。この記事では基本の書き方から勤怠計算などの実務パターン、FLOOR・MROUNDとの違いまでまとめて紹介します。
この記事は次のような人におすすめ
- 数値を特定の倍数に切り上げたい
- 勤怠管理で始業時刻を15分・30分単位に切り上げたい
- FLOOR関数やMROUND関数との違いを知りたい
CEILING関数とは?
CEILING(シーリング)関数は、数値を指定した倍数の方向に切り上げて丸める関数です。名前は英語の「ceiling(天井)」に由来し、「天井に向かって上げる」=切り上げのイメージです。
たとえば「12」を5の倍数で切り上げると「15」になります。12に近い5の倍数は10と15ですが、CEILING関数は常に大きい方(ゼロから遠い方)を返します。
対になる関数がFLOOR関数で、こちらは同じ倍数で切り捨てます。Excel 2003以降のバージョンで使用でき、Microsoft 365やGoogleスプレッドシートにも対応しています。
CEILING関数の書き方(構文と引数)
基本構文
=CEILING(数値, 基準値)
引数は2つ。どちらも必須です。
引数の説明
| 引数 | 必須/任意 | 内容 |
|---|---|---|
| 数値(number) | 必須 | 切り上げたい数値。セル参照や数式もOK |
| 基準値(significance) | 必須 | 切り上げの基準となる倍数。0以外の数値 |
正の数を負の基準値で切り上げようとすると #NUM! エラーになります。負の数を扱う場合は CEILING.MATH 関数の使用も検討してください。
CEILING関数の基本的な使い方
数値を直接入力する
=CEILING(12, 5)
結果は「15」です。12以上で最も小さい5の倍数が15なので、15が返ります。
=CEILING(21, 5)
結果は「25」です。21は20より大きいので、次の5の倍数である25に切り上がります。
ちょうど倍数と一致する場合
=CEILING(20, 5)
結果は「20」です。もともと5の倍数なので、そのまま返されます。
セル参照を使う
A1に「1,234」が入っているとき、100の倍数に切り上げてみましょう。
=CEILING(A1, 100)
結果は「1,300」です。1,234以上で最も小さい100の倍数が1,300になります。
小数の基準値も指定できる
0.5刻みで切り上げる例です。
=CEILING(3.2, 0.5)
結果は「3.5」です。3.2以上で最も小さい0.5の倍数が3.5になります。
実務でのCEILING関数活用例
勤怠管理の時間切り上げ(15分単位)
勤怠計算で「始業時刻を15分単位に切り上げ」にするケースはよくあります。Excelの時刻はシリアル値なので、15分="0:15"を基準値に指定します。
=CEILING(A2, "0:15")
A2に「9:07」と入っていれば結果は「9:15」、「9:22」なら「9:30」です。どちらも切り上げなので、15の倍数以上で最も近い時刻が返ります。
始業は切り上げ、終業は切り捨て
終業時刻には「前の15分に切り捨て」が必要なので、FLOOR関数を使います。
=FLOOR(B2, "0:15")で17:47→17:45のように切り捨てられます。CEILING関数とFLOOR関数を組み合わせると、勤怠の端数処理がスマートに解決できます。
見積金額を千円単位に切り上げる
見積書で細かい端数を繰り上げたい場面です。
=CEILING(B3, 1000)
B3に「45,678円」が入っていれば結果は「46,000円」です。端数を切り上げておけば、予算オーバーのリスクを減らせます。
梱包数をケース単位に切り上げる
必要な数量をケース単位(1ケース=12個)で発注したいケースです。
=CEILING(A4, 12)
A4に「50」が入っていれば結果は「60」(5ケース分)です。端数があっても1ケース多めに発注するので、不足が出ません。FLOOR関数なら「48」(4ケース分)に切り捨てます。
よくあるエラーと対処法
| 症状 | 原因 | 対処法 |
|---|---|---|
| #NUM! | 正の数値に負の基準値を指定した | 基準値の符号を数値と合わせる |
| #DIV/0! | 基準値に0を指定した | 0以外の数値を指定する |
| #VALUE! | 引数に文字列が含まれている | セル参照先が数値かどうか確認する |
#NUM! エラー
正の数値に負の基準値を指定すると発生します。
=CEILING(10, -3)
正の数を切り上げるときは、基準値も正の数にしてください。
負の数を扱う場合は、CEILING.MATH関数がおすすめです。CEILING.MATH関数はExcel 2013以降で使えます。
=CEILING.MATH(-10, 3)
結果は「-9」です。CEILING.MATHは正の無限大方向に切り上げます。
#DIV/0! エラー
基準値に0を指定すると発生します。
=CEILING(10, 0)
基準値は0以外の数値を指定してください。
#VALUE! エラー
引数に数値として認識できない文字列が入っていると発生します。セル参照先を確認してみてください。
FLOOR・MROUND・ROUNDUPとの使い分け
丸め方向の異なる関数を比較します。数値=12、倍数/桁数=5の場合です。
| 関数 | 丸め方向 | 数式 | 結果 |
|---|---|---|---|
| CEILING | 倍数で切り上げ | =CEILING(12, 5) | 15 |
| FLOOR | 倍数で切り捨て | =FLOOR(12, 5) | 10 |
| MROUND | 倍数で四捨五入 | =MROUND(12, 5) | 10 |
| ROUNDUP | 桁数で切り上げ | =ROUNDUP(12, -1) | 20 |
| ROUNDDOWN | 桁数で切り捨て | =ROUNDDOWN(12, -1) | 10 |
CEILINGとROUNDUPはどちらも切り上げですが、指定方法が違います。CEILINGは「倍数」で指定、ROUNDUPは「桁数」で指定します。「5の倍数」「12の倍数」のような任意の倍数にはCEILING関数が向いています。
勤怠管理の場面での使い分けを整理します。
| 処理 | 関数 | 数式例 |
|---|---|---|
| 始業時刻を切り上げ | CEILING | =CEILING(A2, "0:15") |
| 終業時刻を切り捨て | FLOOR | =FLOOR(B2, "0:15") |
| 時刻を最も近い15分に丸め | MROUND | =MROUND(C2, "0:15") |
丸め関数全体の使い分けが気になる方は、ROUND関数の記事で丸め6種の比較表をまとめています。あわせて参考にしてみてください。
まとめ
CEILING関数は、数値を指定した倍数に切り上げるときに使う関数です。
ポイントを整理します。
- 構文は
=CEILING(数値, 基準値)の2引数だけ - 常に「ゼロから遠い方の倍数」に切り上げる
- 始業時刻の切り上げ、見積金額の繰り上げ、発注数のケース切り上げに便利
- 切り捨てならFLOOR、四捨五入ならMROUND、桁数指定ならROUNDを使い分ける
- 負の数を扱うときはCEILING.MATH関数の方が直感的
まずは =CEILING(A1, 1000) で千円単位の切り上げから試してみてください。
関数一覧
Excel関数の一覧は以下の記事から確認できます。
エラー値まとめ
Excelのエラー値の種類と対処方法は、こちらの記事にまとめています。
