Excelで数値を5単位や10単位など、指定した単位に切り上げたいときは、CEILING.MATH(シーリング・マス)関数を使います。
例えば「100個の商品を仕入れたいが発注は12個単位であるとき、何個発注すればよいか」「100分という時間を15分単位で切り上げて整えたい」という場合には、CEILING.MATH関数を使う方法があります。
この記事では、CEILING.MATH関数の基本的な使い方と基準値、モードの指定方法、実際の仕事での使用例を紹介します。また、同じく切り上げを行うROUNDUP関数との使い分けや、負の数を扱う場合のモードについても説明します。
数値や基準値、モードをサイト上で変更して計算結果を確認できるCEILING.MATH関数の体験教材もあります。
CEILING.MATH関数でできること
100個の商品を仕入れたいのに、発注は12個単位でしかできない。
100個は絶対に必要である。
その場合、何個発注すればよいのか。
これを、CEILING.MATH関数で下記のように計算できます。
=CEILING.MATH(100,12)
結果は 108 です。
このように、元となる値と基準値(切り上げたい単位)を指定することで、元となる値が正の数の場合は、元の数値を下回らない、最も近い基準値の倍数に切り上げることができます。
今回の場合、12の倍数である96個では必要な100個に足りませんが、次の108個なら100個以上になるため、108個を発注すればよいということです。
CEILING.MATH関数の基本的な使い方
CEILING.MATH関数の書き方と3つの引数
基本の書き方は、次のとおりです。
=CEILING.MATH(数値,基準値(切り上げたい単位),モード)
| 引数 | 必須・任意 |
|---|---|
| 数値 | 必須 |
| 基準値(切り上げたい単位) | 任意 |
| モード | 任意 |
- 数値:切り上げたい数値です。
- 基準値:どの単位の倍数に切り上げるかを指定する数値です。
5なら5単位、10なら10単位です。省略することも可能です。 - モード:数値が正の数の場合は気にしなくてよいです。モードは負の数を丸める方向を指定します。
0なら0に近づく方向、0以外なら0から遠ざかる方向です。省略した場合は0と同じ結果になります。
例えば、A1に 1234.561 を入力し、別のセルに =CEILING.MATH(A1,5) と入力してEnterキーを押すと、1235 が表示されます。
CEILING.MATH関数は、数値を指定した単位に切り上げる関数であり、1234.561より大きい数値で、最も近い5の倍数は1235となるためです。
また、基準値を省略した場合は、整数へ切り上げます。
=CEILING.MATH(12.34) → 13
基準値もモードも、必ず指定しなければならないわけではありません。正の数を指定した単位に切り上げるだけなら、通常は数値と基準値の2つで計算できます。
CEILING.MATH関数の早見表
数値(正の数)と基準値を指定した場合の早見表
セルA1に 1234.561 と正の数が入力されている場合、基準値の違いによってCEILING.MATH関数の結果は次のようになります。
| 基準値(切り上げたい単位) | 数式 | 結果 |
|---|---|---|
| 0.01単位 | =CEILING.MATH(A1,0.01) |
1234.57 |
| 0.1単位 | =CEILING.MATH(A1,0.1) |
1234.6 |
| 1単位(整数) | =CEILING.MATH(A1,1) |
1235 |
| 5単位 | =CEILING.MATH(A1,5) |
1235 |
| 10単位 | =CEILING.MATH(A1,10) |
1240 |
| 15単位 | =CEILING.MATH(A1,15) |
1245 |
| 100単位 | =CEILING.MATH(A1,100) |
1300 |
| 1000単位 | =CEILING.MATH(A1,1000) |
2000 |
CEILING.MATH関数の基準値には、切り上げた後の数値を何の倍数にするかを指定します。
結果を 5 の倍数にしたいなら基準値は 5、結果を 15 の倍数にしたいなら基準値は 15 を指定します。
注意点として、=CEILING.MATH(10.01,5) の結果は 15 ですが、=CEILING.MATH(10.00,5) は 10 になります。数値が既に基準値の倍数と等しいためです。
指定した倍数より少しでも端数があれば、次の倍数に切り上げるということです。
また、基準値が正の数値か負の数値かは関係なく、絶対値の倍数に切りあがります。
| 基準値の正負 | 基準値(切り上げたい単位) | 数式 | 結果 |
|---|---|---|---|
| 正 | 100単位 | =CEILING.MATH(1234.561,100) |
1300 |
| 負 | 100単位 | =CEILING.MATH(1234.561,-100) |
1300 |
数値(正の数)のみを指定した場合の早見表
数値のみを指定(または基準値を省略)した時は、CEILING.MATH関数の結果は次のようになります。
| 数値 | 数式 | 結果 |
|---|---|---|
| 0.01 | =CEILING.MATH(0.01,) |
1 |
| 0.01 | =CEILING.MATH(0.01) |
1 |
| 0.1 | =CEILING.MATH(0.1) |
1 |
| 1 | =CEILING.MATH(1) |
1 |
| 1.01 | =CEILING.MATH(1.01) |
2 |
| 9.99 | =CEILING.MATH(9.99) |
10 |
| 100.01 | =CEILING.MATH(100.01) |
101 |
| 199.01 | =CEILING.MATH(199.01) |
200 |
CEILING.MATH関数で数値のみを指定した場合、最も近い整数に切り上げます。
これは、同じく数値を指定された桁数に切り上げるROUNDUP関数で =ROUNDUP(0.01,0) のように桁数を 0 にした場合や =ROUNDUP(0.01,) のように桁数を省略した場合と同じ計算結果になります(桁数を省略すると 0 扱い)。
ただし、数値が負の数の場合は、数値のみを指定した場合や、モード の指定方法によって結果が変わります。
数値に負の数を指定した場合の早見表
数値に負の数を指定し、基準値を省略、モードに0を指定(または省略)したときは、CEILING.MATH関数の結果は次のようになります。
| 数値 | 数式 | 結果 |
|---|---|---|
| -0.01 | =CEILING.MATH(-0.01,) |
0 |
| -0.01 | =CEILING.MATH(-0.01,,) |
0 |
| -0.01 | =CEILING.MATH(-0.01,,0) |
0 |
| -0.01 | =CEILING.MATH(-0.01) |
0 |
| -0.1 | =CEILING.MATH(-0.1) |
0 |
| -1 | =CEILING.MATH(-1) |
-1 |
| -1.01 | =CEILING.MATH(-1.01) |
-1 |
| -9.99 | =CEILING.MATH(-9.99) |
-9 |
| -100.01 | =CEILING.MATH(-100.01) |
-100 |
| -199.01 | =CEILING.MATH(-199.01) |
-199 |
これは、ROUNDDOWN関数で桁数に 0 を指定(または省略)した場合と同じ計算結果になります。
次に、上記からモードだけを0以外の数値に変更(ここでは 2 を指定)した場合は、次のようになります。
| 数値 | 数式 | 結果 |
|---|---|---|
| -0.01 | =CEILING.MATH(-0.01,,2) |
-1 |
| -0.1 | =CEILING.MATH(-0.1,,2) |
-1 |
| -1 | =CEILING.MATH(-1,,2) |
-1 |
| -1.01 | =CEILING.MATH(-1.01,,2) |
-2 |
| -9.99 | =CEILING.MATH(-9.99,,2) |
-10 |
| -100.01 | =CEILING.MATH(-100.01,,2) |
-101 |
| -199.01 | =CEILING.MATH(-199.01,,2) |
-200 |
これは、ROUNDUP関数で桁数に 0 を指定(または省略)した場合と同じ計算結果です。
負の数値が、モードによってROUNDUP関数・ROUNDDOWN関数の結果と同じになるのはなぜ?
ROUNDUP関数の仕組み
ROUNDUP関数は数値を指定された桁数に切り上げる関数であり、数値は0から遠ざかる方向に向かいます。
言い換えると、数値の絶対値を指定された桁数に切り上げます。
=ROUNDUP(1.1,0) の結果は 2 で、=ROUNDUP(-1.1,0) の結果は -2 です。
1.1 ➡ 2も、-1.1 → -2 も、どちらも 0から遠ざかっています。
ROUNDDOWN関数の仕組み
一方、ROUNDDOWN関数は数値を指定された桁数で切り捨てる関数であり、数値は0へ近づく方向に向かいます。
言い換えると、数値の絶対値を指定された桁数で切り捨てます。
=ROUNDDOWN(1.1,0) の結果は 1 で、=ROUNDDOWN(-1.1,0) の結果は -1 です。
1.1 ➡ 1も、-1.1 → -1 も、どちらも 0へ近づいています。
CEILING.MATH関数のモードの仕組み
CEILING.MATH関数の書き方は下記でした。
=CEILING.MATH(数値,基準値(切り上げたい単位),モード)
数値が負の数の場合、モードによって、0から遠ざけるのか0へ近づけるのかを指定できます。
モードに 0 を指定(または省略)すると、結果は0へ近づきます。つまりROUNDDOWN関数と同じ動きになります。
モードに 0 以外を指定すると、結果は0から遠ざかります。つまりROUNDUP関数と同じ動きになります。
※ここで言う「ROUNDUP関数・ROUNDDOWN関数と同じ動き」というのは、CEILING.MATH関数の基準値を省略、または 1 にした場合と、ROUNDUP関数・ROUNDDOWN関数の桁数を 0 にした場合です。
ROUNDUP関数とは何が違う?
CEILING.MATH関数とROUNDUP関数は、どちらも数値を切り上げる関数です。
ただし、切り上げる単位の指定方法が異なります。
ROUNDUP関数は指定した桁数に切り上げる関数で、小数第2位や10・100・1000単位などに切り上げます。
一方、CEILING.MATH関数は基準値を指定するため、5単位や15単位などにも切り上げることができます。
例えば、次のような結果になります。
| 目的 | 数式 | 結果 |
|---|---|---|
| 整数に切り上げる | =ROUNDUP(12.34,0) |
13 |
| 整数に切り上げる | =CEILING.MATH(12.34,1) |
13 |
| 10単位に切り上げる | =ROUNDUP(1234.561,-1) |
1240 |
| 10単位に切り上げる | =CEILING.MATH(1234.561,10) |
1240 |
| 5単位に切り上げる | =CEILING.MATH(12,5) |
15 |
| 15単位に切り上げる | =CEILING.MATH(47,15) |
60 |
整数や10単位への切り上げでは、どちらの関数でも同じ結果にできます。
しかし、ROUNDUP関数の桁数指定だけでは、5単位や15単位への切り上げはできません。
どの桁まで残したいかならROUNDUP関数、何の倍数にそろえたいかならCEILING.MATH関数、と考えると分かりやすいと思います。
5単位・10単位・15単位に切り上げる方法
5単位に切り上げる(基準値:5)
数値を5単位に切り上げたい場合は、基準値に 5 を指定します。
=CEILING.MATH(442,5) → 445
442より大きい5の倍数のうち、最も近い数値は445なので、結果は445になります。
例えば 441、442、444 の場合はいずれも445になりますが、元の数値がちょうど 445 なら結果も445です。
10単位に切り上げる(基準値:10)
10単位に切り上げたい場合は、基準値を 10 にします。
=CEILING.MATH(1234.561,10) → 1240
1234.561より大きい10の倍数のうち、最も近い1240に切り上げます。
15単位に切り上げる(基準値:15)
15単位に切り上げたい場合は、基準値を 15 にします。
=CEILING.MATH(47,15) → 60
15の倍数は15、30、45、60・・・となります。47は45より大きいため、次の60になります。
5単位・15単位のように、ROUNDUP関数の桁数では指定できない切り上げも可能です。
100単位・1000単位に切り上げる方法
100単位に切り上げる(基準値:100)
100単位に切り上げたい場合は、基準値に 100 を指定します。
=CEILING.MATH(1234.561,100) → 1300
1234.561より大きい100の倍数のうち、最も近い1300になります。
1000単位に切り上げる(基準値:1000)
1000単位なら、基準値は 1000 です。
=CEILING.MATH(1234.561,1000) → 2000
この場合は、ROUNDUP関数で桁数に -3 を指定した場合と、同じ結果です。
ただし、基準値を 50 や 200 にしたい場合は、ROUNDUP関数ではなくCEILING.MATH関数を使う方が簡単です。
CEILING.MATH関数は仕事でどう使う?3つの実用例
実際の仕事では、「決まった単位で数量をそろえる」「計算した金額を指定した単位に切り上げる」「作業予定時間を一定の単位で管理する」といった用途があります。
ここでは、切り上げる単位が決まっている場合の具体例を紹介します。
発注数量を12個単位にそろえる(仕入れ・在庫管理)
例えば、ある商品の必要数量が 41個 で、仕入先には12個単位でしか発注できないとします。
41個だけ注文することはできないため、12の倍数で41個以上になる数量を求める必要があります。
12の倍数は12、24、36、48と続くので、41個以上になる最も近い数値は48です。
このような場合は、
=CEILING.MATH(41,12) → 48個
とすれば、12個単位で発注できる数量を計算できます。
36個では必要な41個に足りないため、48個を発注することになります。
概算予算を5,000円単位で切り上げる(企画・予算管理)
例えば、ある企画に必要な費用を計算したところ、123,400円だったとします。
社内で予算を5,000円単位で確保するルールがある場合は、
=CEILING.MATH(123400,5000) → 125,000円
となります。
5,000の倍数のうち、123,400円より大きく最も近い金額が125,000円だからです。
同じ数値をROUNDUP関数で1,000円単位に切り上げると124,000円、10,000円単位なら130,000円になるため、5,000円単位にはできません。
作業予定時間を15分単位で切り上げる(プロジェクト管理)
例えば、ある作業の見積時間が 47分 だったとします。
予定を立てるときに、15分単位で端数を切り上げて管理するルールなら、
=CEILING.MATH(47,15) → 60分
となります。
45分では47分に足りないため、次の15分単位である60分になります。
ここでは、47分という数値を直接使っています。Excelの時刻データを使う場合は、時刻が数値として何日分に当たるかという扱いになるため、同じように基準値へ 15 を入れるわけではありません。
なお、勤務時間や給与の計算をする場合は、必ず定められた端数処理のルールがあると思いますので、それに従う必要があります。
数値と基準値・モードを変えて切り上げを体験しよう
ここまでの説明を見て、なんとなくはわかっても実際にやってみないと分かりにくい部分もあるかと思います。
CEILING.MATH関数ビジュアライザー(無料・登録不要)では、サイト上で数値と基準値、モードを変更しながら、計算結果を確認できます。
初期状態では、B2に -5.5、C2に基準値 2、D2にモード -1、E2に結果 -6 が入っています。
例えば、次のように変更してみてください。
- B2を
12、C2を5にして、結果が15になることを確認する。5単位に切り上げた結果です。モードは-1のままでも変更しても結果は15です。 - B2を
47、C2を15にして、結果が60になることを確認する。15単位に切り上げた結果です。モードは-1のままでも変更しても結果は60です。 - B2を
-5.5、C2を2、D2を0にして、結果が-4になることを確認する。負の数を、0に近づく方向へ2単位で切り上げた結果です。 - D2を
0から-1に変えて、結果が-6になることを確認する。負の数を、0から遠ざかる方向へ2単位で切り上げた結果です。
特に3と4では、モードの指定によって結果が変わるので、注意してみてください。
CEILING.MATH関数を使うときの注意点
マイナスの数値はどう切り上がる?
CEILING.MATH関数は、負の数の場合、モードによって丸める方向が変わります。
モードを省略するか 0 にすると0に近づく方向、0以外を指定すると0から遠ざかる方向へ丸めます。
例えば、次のような結果になります。
| 数式 | 結果 |
|---|---|
=CEILING.MATH(5.5,2) |
6 |
=CEILING.MATH(-5.5,2) |
-4 |
=CEILING.MATH(-5.5,2,0) |
-4 |
=CEILING.MATH(-5.5,2,1) |
-6 |
=CEILING.MATH(-5.5,2,-1) |
-6 |
-5.5 を2の倍数に丸める場合、0に近い側は -4、0から遠い側は -6 です。
モードを省略すると -4 ですが、1 や -1 など0以外を指定すると -6 になります。
また、正の数の場合はモードを変えても結果は変わりません。
ROUNDUP関数との負の数の違い
ROUNDUP関数は、正の数でも負の数でも0から遠ざかる方向へ丸めます。
一方、CEILING.MATH関数はモードを省略すると、負の数は0に近づく方向へ丸めます。
| 数式 | 結果 |
|---|---|
=ROUNDUP(-5.5,0) |
-6 |
=CEILING.MATH(-5.5,1) |
-5 |
=CEILING.MATH(-5.5,1,1) |
-6 |
=ROUNDDOWN(-5.5,0) |
-5 |
同じ切り上げの関数でも、負の数では結果が異なることがあります。
特に、CEILING.MATH関数では、モードに 0 を指定(または省略)するか 0 以外を指定するかによっても結果が変わるため、負の数を扱う場合は注意しましょう。
基準値を省略した場合
CEILING.MATH関数では、基準値とモードを省略できます。
例えば、
=CEILING.MATH(12.34)→ 13=CEILING.MATH(12.34,)→ 13=CEILING.MATH(-5.5)→ -5=CEILING.MATH(-5.5,)→ -5
となります。
正の数は次の整数へ、負の数は0に近い整数へ丸められます。
ROUNDUP関数の桁数は =ROUNDUP(12.34,) のように , の後を省略できますが、ROUNDUP(12.34) のようにはできません。
一方、CEILING.MATH関数の基準値は CEILING.MATH(12.34) のように , 自体の省略も可能です。
セルの表示形式を変えるだけでは数値は切り上げられない
Excelでは、セルの表示形式で小数点以下の表示桁数を変更できます。ただし、見た目上は数字が変わっても、セルに保存された元の数値はそのままです。
例えば、セルA1に 12.34 が入力されている場合、表示形式を小数1桁にすると、画面上は 12.3 と表示されます。
しかしこれは小数第2位が四捨五入された結果が表示されているだけで、元の数値は 12.34 のままです。元の数値が 12.35 なら、表示形式を小数1桁にすると 12.4 になります。
また、表示形式では、5単位や15単位に切り上げる計算はできません。
表示形式による見た目の変更と、CEILING.MATH関数による実際の計算結果の変更は別ということです。
FLOOR.MATH関数との違い
FLOOR.MATH関数は、指定した倍数へ切り捨てる関数です。
例えば、正の数を5単位に丸める場合は、次のようになります。
| 数式 | 結果 |
|---|---|
=CEILING.MATH(12,5) |
15 |
=FLOOR.MATH(12,5) |
10 |
CEILING.MATH関数は15、FLOOR.MATH関数は10です。
切り上げたい場合と切り捨てたい場合で、使う関数が異なります。
CEILING.MATH関数・ROUNDUP関数・ROUNDDOWN関数の使い分け
3つの関数は似ていますが、端数をどのように扱うかと、切り上げる単位の指定方法が異なります。
| 関数 | 端数の扱い | 例 |
|---|---|---|
| CEILING.MATH関数 | 指定した倍数へ切り上げ | =CEILING.MATH(12,5) → 15 |
| ROUNDUP関数 | 指定した桁に切り上げ | =ROUNDUP(12.34,1) → 12.4 |
| ROUNDDOWN関数 | 指定した桁で切り捨て | =ROUNDDOWN(12.34,1) → 12.3 |
例えば先ほどの発注数量の例では、41個の商品を12個単位で発注するなら、=CEILING.MATH(41,12) で48個という結果になります。
一方、41個の商品を12個入りの箱に入れるために必要な箱数を求めるなら、=ROUNDUP(41/12,0) で4箱と計算できます。
41個の商品から12個入りの箱を何箱作れるか?であれば、=ROUNDDOWN(41/12,0) で3箱となります。
同じ数値でも、何を知りたいかによって使う関数が変わるということです。
ROUNDUP関数で切り上げる方法について詳しくは、Excelで必ず切り上げる方法|ROUNDUPで小数・整数の桁を指定するも参考にしてください。
ROUNDDOWN関数で切り捨てる方法について詳しくは、Excelで必ず切り捨てる方法|ROUNDDOWNで小数・整数の桁を指定するも参考にしてください。
まとめ|CEILING.MATH関数は指定した倍数へ切り上げたい場合に使う
CEILING.MATH関数は、=CEILING.MATH(数値,基準値,モード) と書き、基準値を変えることで、5・10・15・100など指定した単位へ切り上げることができます。
ROUNDUP関数は桁数を指定しますが、CEILING.MATH関数は何の倍数にするかを指定するため、5単位や15単位でも計算できます。
負の数ではモードによって結果が変わるため、0に近づけたいか、0から遠ざけたいかを確認しましょう。
どの基準値を指定すればよいかさくっと確認したいときは、CEILING.MATH関数ビジュアライザーで数値と基準値、モードを変えながら確認してみてください。
複数の関数の結果の違いを並べて比較できるページもあります→同じ数値で6つの丸め方を比較。
