Excelで数値の端数を必ず切り捨てたいときは、ROUNDDOWN(ラウンドダウン)関数を使います。
四捨五入ならROUND関数ですが、例えば「小数点以下が少しでもあれば小数点以下を切り捨てて整数にしたい」「計算結果を10の位や100の位まで残して、それより下の端数を切り捨てたい」という場合には、ROUNDDOWN関数を使うことが多いです。
この記事では、ROUNDDOWN関数の基本的な使い方と桁数の指定方法、実際の仕事での使用例を紹介します。また、ROUNDDOWN関数と同じく切り捨てができるTRUNC関数や、切り捨てとは逆に切り上げを行うROUNDUP関数との使い分けについても説明します。
数値や桁数をサイト上で変更して計算結果を確認できるROUNDDOWN関数の体験教材もあります。
ROUNDDOWN関数の桁数と計算結果の早見表
セルA1に 1234.567 と入力されている場合、ROUNDDOWN関数の結果は次のようになります。
| 切り捨てた後に残したい位 | 数式 | 結果 |
|---|---|---|
| 小数第2位まで | =ROUNDDOWN(A1,2) |
1234.56 |
| 小数第1位まで | =ROUNDDOWN(A1,1) |
1234.5 |
| 整数まで(小数点以下なし) | =ROUNDDOWN(A1,0) |
1234 |
| 10の位まで(10単位) | =ROUNDDOWN(A1,-1) |
1230 |
| 100の位まで(100単位) | =ROUNDDOWN(A1,-2) |
1200 |
| 1000の位まで(1000単位) | =ROUNDDOWN(A1,-3) |
1000 |
ROUNDDOWN関数の桁数には、正の数・0・負の数を指定できます。
小数点以下の桁を残したいなら正の数、整数にするなら0、10の位以上を残すなら負の数を指定します。
注意点として、=ROUNDDOWN(1234.499999,1) は残す桁より下に桁がたくさんありますが、結果は 1234.4 です。また、四捨五入ではないため、1234.5 とはなりません。
残す桁より下の数字を全て切り捨てるということです。
ROUNDDOWN関数の基本的な使い方
ROUNDDOWN関数の書き方と2つの引数
基本の書き方は、次のとおりです。
=ROUNDDOWN(数値,桁数)
- 数値:切り捨てたい数値です。
=ROUNDDOWN(1234.567,1)のように直接数値を指定することもできますし、A1のようにセル番地を指定してそのセルに入力された値を参照することもできます。 - 桁数:切り捨てた結果、どの位まで残すかを指定する整数です。こちらも同様に、直接数値を指定・セル番地を指定の両方が可能です。
例えば、A1に 1234.567 を入力し、別のセルに =ROUNDDOWN(A1,2) と入力してEnterキーを押すと、1234.56 が表示されます。1234.567 の小数第3位以下を切り捨て、小数第2位まで残した結果です。
ROUNDUP・ROUNDとは何が違う?
ROUNDDOWNは切り捨てを行う関数です。指定した桁より下に端数をすべて切り捨てます。
一方、ROUNDUPは切り上げを行う関数です。
また、ROUNDは四捨五入を行うため、残す桁の1つ下の数字が5未満であれば切り捨てられ、5以上なら切り上げられます。
例えば、桁数を 0 にして整数にする場合、次のような結果になります。
| 元の数値 | ROUNDDOWN | ROUNDUP | ROUND |
|---|---|---|---|
| 12.01 | 12 | 13 | 12 |
| 12.49 | 12 | 13 | 12 |
| 12.50 | 12 | 13 | 13 |
| 12.99 | 12 | 13 | 13 |
| 12.00 | 12 | 12 | 12 |
ROUNDは小数第1位を四捨五入するため、12.50 や 12.99 は 13 になりますが、12.01 や 12.49 なら 12 になります。
ROUNDUPは小数点以下に少しでも端数があれば切り上げるため、12.01 でも結果は 13 です。
一方、ROUNDDOWNは端数の大きさに関係なく小数点以下を切り捨てます。
そのため、12.99 であっても、桁数を 0 にすれば結果は 12 です。
桁数に指定する正の数・0・負の数の違い
桁数は、正の数の場合は 結果に残す位、負の数の場合は 10・100・1000など、切り捨て後の単位 を基準に考えると分かりやすいと思います。
2:小数第2位まで残す(小数第3位以下を切り捨て)1:小数第1位まで残す(小数第2位以下を切り捨て)0:整数まで残す(小数点以下を切り捨て)-1:10単位にする(1の位以下を切り捨て)-2:100単位にする(10の位以下を切り捨て)-3:1000単位にする(100の位以下を切り捨て)
小数点以下を切り捨てる方法
小数点以下を切り捨てて整数にする
小数点以下をなくして整数にしたい場合は、桁数に 0 を指定します。
=ROUNDDOWN(1234.567,0) → 1234
小数点以下の .567 を切り捨て、整数部分の 1234 を残します。
例えば 1234.999 のように小数点以下がほぼ1に近い数値であっても、結果は 1234 です。
小数第1位・第2位まで残して切り捨てる
小数点以下を残したい場合は、残す桁数を正の整数で指定します。
=ROUNDDOWN(1234.567,1)→ 1234.5(小数第1位まで)=ROUNDDOWN(1234.567,2)→ 1234.56(小数第2位まで)=ROUNDDOWN(1234.567,3)→ 1234.567(小数第3位まで)
このように、元の数値に端数がある位置と、どこまで残したいかによって結果が変わります。
例えば小数第2位まで残す場合、元の数値の小数第3位以下を切り捨てます。
四捨五入とは異なり、小数第3位が 5 以上であっても、小数第2位が繰り上がることはありません。
10の位・100の位まで残して切り捨てる方法
10の位まで残す(桁数:-1)
1の位以下を切り捨てて10単位にしたい場合は、-1 を指定します。
=ROUNDDOWN(1234.567,-1) → 1230
1の位以下の端数を切り捨てるため、結果は1230になります。
言い換えると、元の数値の10の位が3なので、10単位である1230になります。
100の位まで残す(桁数:-2)
100単位に切り捨てたい場合は、桁数を -2 にします。
=ROUNDDOWN(1234.567,-2) → 1200
10の位以下を切り捨てて100の位まで残すため、結果は1200になります。
1000の位まで残す(桁数:-3)
1000単位なら、桁数は -3 です。
=ROUNDDOWN(1234.567,-3) → 1000
100の位以下を切り捨てて1000単位とするため、結果は1000です。
切り捨てる桁数によっては ROUNDで四捨五入した場合とは結果が大きく異なることもあるので、どの単位に切り捨てたいのかを確認しましょう。
ROUNDDOWN関数は仕事でどう使う?3つの実用例
ROUNDDOWN関数は、単に数字の見た目を整えるだけでなく、「容量を満たせる必要数を計算する」「端数を取り除いて整数にする」といった用途があります。
ここでは、端数を切り捨てるルールがある場合の具体例を紹介します。
在庫から販売できるセット商品の数を計算する(EC運営・在庫管理)
例えば、ミネラルウォーターを12本入りのセット商品として販売していて、単品の在庫が 41本 あったとします。
12本そろって初めて1セットとして販売できるため、41本の在庫から何セット販売できるかを求めたい場合は、切り捨てを使います。
まず、普通に割り算すると、
41/12 → 3.4166…セット
となります。
しかし、実際に3.4166セットを販売することはできません。3セットなら36本必要で、残りは5本です。4セット販売するには48本必要なので、在庫が足りません。
このような場合は、
=ROUNDDOWN(41/12,0) → 3セット
とすれば、現在の在庫から販売できるセット商品の数を整数で求められます。
このように、決められた数量が揃わないと1セットとして扱えない場合、ROUNDDOWNで端数を切り捨てることで、実際に用意できる数量を計算できます。
消費税額の1円未満を切り捨てる(経理・請求業務)
消費税額の計算では、1円未満の端数を切り捨てる方法が一般的によく使われています。
例えば、消費税率10%の商品の税抜価格の合計が 1,235円 だったとします。
消費税額を普通に計算すると、
1235*0.1 → 123.5円
となります。
ここで、1円未満の端数を切り捨てる場合は、
=ROUNDDOWN(1235*0.1,0) → 123円
と計算できます。
小数点以下の 0.5円 を切り捨てるため、消費税額は123円、税込合計は 1,358円 になります。
なお、消費税額の端数処理は必ず切り捨てる決まりではなく、切り上げや四捨五入も認められています。
また、インボイスに記載する消費税額は、1枚の請求書につき税率ごとに1回端数処理する必要があります。商品ごとに端数処理した消費税額を合計する方法とは異なるため、実際の請求書では注意しましょう。
購入金額に応じたポイント付与数を計算する(店舗・EC運営)
店舗やECサイトのポイント制度では、「100円につき1ポイント」といったルールが採用されていることがあります。
例えば、税抜100円につき1ポイントを付与するルールで、ポイント付与対象の購入金額が 26,780円(税抜) だったとします。
普通に計算すると、
26780/100 → 267.8ポイント
となります。
ここで、1ポイント未満の端数を切り捨てて付与するルールなら、
=ROUNDDOWN(26780/100,0) → 267ポイント
と計算できます。
100円ごとに1ポイントなので、100円に満たない残りの80円分は切り捨てられます。
同じ数値をROUNDで四捨五入すると268ポイントになってしまいますが、このルールでは267ポイントが正しい結果です。
数値と桁数を変えて切り捨てを体験しよう
ここまでの説明を見て、なんとなくはわかっても実際にやってみないと分かりにくい部分もあるかと思います。
ROUNDDOWN関数ビジュアライザー(無料・登録不要)では、サイト上で数値と桁数を変更しながら、切り捨ての計算結果を確認できます。
初期状態では、B2に 1234.567、C2に桁数 2、D2に結果 1234.56 が入っています。
例えば、次のように変更してみてください。
- C2を
2から0にして、小数点以下を切り捨てた結果を確認する。 -1、-2、-3と変えて、10・100・1000単位の違いを見る。- B2を
1234.999、C2を0にして、小数点以下が大きくても繰り上がらないことを確認する。 - B2を
-12.34、C2を1にして、負の数の結果も確認する。
3と4は、ROUNDUP関数、ROUND関数との違いも分かりやすいと思います。
特に4では、マイナスの数値を切り捨てた結果に注意してみてください。
ROUNDDOWN関数を使うときの注意点
マイナスの数値はどう切り捨てられる?
ROUNDDOWN関数は、正の数でも負の数でも、0に近づく方向へ丸める関数です。
例えば、次のような結果になります。
| 数式 | 結果 |
|---|---|
=ROUNDDOWN(3.2,0) |
3 |
=ROUNDDOWN(-3.2,0) |
-3 |
=ROUNDDOWN(-12.34,1) |
-12.3 |
=ROUNDDOWN(-1234.567,-2) |
-1200 |
マイナスの数値では、切り捨てると絶対値が小さくなります。
例えば -3.6 の小数点以下を切り捨てると、-4 ではなく -3 になります。
この点は、マイナス数値を小さい方向(絶対値が大きい方向)に向かうROUNDUP関数やINT関数とは異なります。
また、ROUND関数も四捨五入する値が5以上の場合は、マイナス数値は小さい方向(絶対値が大きい方向)へ丸めます。下記を確認してみてください。
| 数式 | 結果 |
|---|---|
=ROUNDDOWN(-3.6,0) |
-3 |
=ROUNDUP(-3.6,0) |
-4 |
=ROUND(-3.6,0) |
-4 |
=INT(-3.6) |
-4 |
-3.2 の場合は下記のようになります。
| 数式 | 結果 |
|---|---|
=ROUNDDOWN(-3.2,0) |
-3 |
=ROUNDUP(-3.2,0) |
-4 |
=ROUND(-3.2,0) |
-3 |
=INT(-3.2) |
-4 |
INT関数との違い
INT関数も小数を整数にする関数ですが、ROUNDDOWNとは負の数の扱いが異なります。
| 数式 | 結果 |
|---|---|
=ROUNDDOWN(3.2,0) |
3 |
=INT(3.2) |
3 |
=ROUNDDOWN(-3.2,0) |
-3 |
=INT(-3.2) |
-4 |
INT関数は、指定した数値を超えない最大の整数を返します。
そのため、負の小数ではROUNDDOWNと異なる結果になります。
「最大の整数を返す」なら -4 ではなく -3 (0に近づく)になるのでは?と思ってしまいそうですが、ポイントは「指定した数値を超えない」です。
=INT(-3.2) だと「指定した数値」は -3.2 です。対して、-3 は「-3.2 より大きい(0に近い)」ため、「指定した数値を超える」ことになります。
なので、=INT(-3.2) の結果は、「-3.2 以下(0より遠ざかる方向)の数値の中で最大の整数」である -4 を返します。
TRUNC関数との違い
TRUNC関数も数値の端数を切り捨てる関数です。
例えば、
=ROUNDDOWN(1234.567,2)→ 1234.56=TRUNC(1234.567,2)→ 1234.56
となり、同じ数値と桁数を指定した場合は同じ結果になります。
違いの1つは、桁数を省略できるかどうかです。
ROUNDDOWNでは桁数の引数指定が必要ですが、TRUNCでは桁数の引数を省略すると 0 として扱われます。
=TRUNC(1234.567) → 1234
このように、整数部分だけを取り出したい場合には、TRUNCを使う方法もあります。
なお、ROUNDDOWNも =ROUNDDOWN(1234.567,) として , の後ろを省略することはでき、その場合は0として扱われます。
ただし、=ROUNDDOWN(1234.567) とはできません。省略できるのは , の後ろであり、, 自体は省略できません。
セルの表示形式を変えるだけでは数値は切り捨てられない
Excelでは、セルの表示形式で小数点以下の表示桁数を減らせます。ただし、見た目上は表示桁数が減って切り捨てされているように思えても、セルに保存された元の数値はそのままです。
さらに、見た目上は切り捨てされているように思えても、それは切り捨てではなく四捨五入です。
つまり、値が変われば四捨五入された桁の1つ上の桁の数値が繰り上がることもあります。
例えば、セルA1に 1.42 が入力されている場合、表示形式を小数1桁にすると、画面上は 1.4 と表示されます。まるで切り捨てられたかのように見えます。
しかしこれは小数第2位が四捨五入された結果が表示されているだけで、元の数値は 1.42 のままです。元の数値が 1.46 なら、表示形式を小数1桁にすると 1.5 になります。
また、元の数値が変わっていないことは、計算をすることによってもわかります。
元のA1を参照して =A1*2 と計算すれば、結果は 2.84 になります。
つまり、表示形式による見た目の変更と、ROUNDDOWNによる実際の計算結果の変更は別ということです。
また、ROUNDDOWNで計算途中の数値を何度も切り捨てると、最後にまとめて切り捨てた場合とは結果が異なることもあります。
端数をどの段階で処理するかは、実際の集計ルールに合わせて判断しましょう。
5単位や15単位に切り下げたい場合
ROUNDDOWNで指定する桁数は、小数点以下や10・100・1000単位などの位置です。
そのため、「5単位で切り下げる」「15単位で切り下げる」といった場合は、ROUNDDOWNでどのように桁数を指定しても対応できません。
そのような場合には、指定した倍数へ切り下げる FLOOR.MATH関数などを使う方法があります。
例えば、
=FLOOR.MATH(12,5) → 10
となります。
ROUNDDOWN・ROUNDUP・ROUNDの使い分け
3つの関数は似ていますが、端数をどのように扱うかが異なります。
| 関数 | 端数の扱い | 例 |
|---|---|---|
| ROUNDDOWN | 切り捨て | =ROUNDDOWN(12.34,1) → 12.3 |
| ROUNDUP | 切り上げ | =ROUNDUP(12.34,1) → 12.4 |
| ROUND | 四捨五入 | =ROUND(12.34,1) → 12.3 |
例えば先ほどのセット商品の例では、在庫から販売できるセット商品の数を求めるならROUNDDOWNを使います。
一方、ミネラルウォーター41本を12本入る箱に入れて保管するには何箱必要かを求めるなら、ROUNDUPで4箱という結果になります。
同じ数値でも、何を知りたいかによって使う関数が変わるということです。
ROUNDUPで切り上げる方法について詳しくは、Excelで必ず切り上げる方法|ROUNDUPで小数・整数の桁を指定するも参考にしてください。
ROUNDで四捨五入する方法について詳しくは、Excelで小数点・10の位・100の位を四捨五入する方法|ROUNDも参考にしてください。
まとめ|ROUNDDOWN関数は指定した桁より下を切り捨てる
ROUNDDOWN関数は =ROUNDDOWN(数値,桁数) と書き、残したい位に合わせて桁数を変えることで、小数点以下から10・100・1000単位まで切り捨てができます。
ROUNDの四捨五入やROUNDUPの切り上げとは異なり、指定した桁より下の端数を取り除くため、正の数でも負の数でも0に近づく方向へ丸められます。
小数点以下をなくすなら 0、10の位まで残すなら -1、100の位まで残すなら -2 を指定します。
どの桁を指定すればよいかさくっと確認したいときは、ROUNDDOWN関数ビジュアライザーで数値と桁数を変えながら結果を確認してみてください。
複数の関数の結果の違いを並べて比較できるページもあります→同じ数値で6つの丸め方を比較。
