=ROUND(A2,2)はA2の数値を小数点以下2桁に四捨五入するので、3.14159は3.14になります。2つ目の引数は残す桁数で、0なら整数に、-1なら10の単位に丸めます。
| A | B | C | |
|---|---|---|---|
| 1 | Value | 2 decimals | Whole number |
| 2 | 3.14159 | 3.14 | 3 |
| 3 | 2.675 | 2.68 | 3 |
| 4 | 12.5 | 12.5 | 13 |
| 5 | -2.5 | -2.5 | -3 |
| 6 | 1234.567 | 1234.57 | 1235 |
各行はA列の値に両方の数式を使っているので、1234.567は1234.57と1235になります。A2を別の数値に変えると、両方の列がそれに合わせて変わります。
ROUND関数の構文
=ROUND(number, num_digits)
number(数値)は丸める値です。数値、セル、または=ROUND(B2*C2,2)のような数式全体を指定できます。num_digits(桁数)はどこで丸めるかを指定します。プラスの数は小数点以下の桁数、0は整数、マイナスの数は小数点より左の桁数です。
ROUNDが見るのは、切り捨てる最初の桁だけです。その桁が5以上なら残す部分が1上がり、そうでなければそのままです。そのため=ROUND(2.675,2)は2.68、=ROUND(2.674,2)は2.67になります。
十の位、百の位、千の位で四捨五入する
num_digitsをマイナスにすると、小数点より左で丸めます。レポートで1234.567を1230、1200、1000にするのはこの方法です。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | num_digits | Result | Number | |
| 2 | 2 | 1234.57 | 1234.567 | |
| 3 | 1 | 1234.6 | ||
| 4 | 0 | 1235 | ||
| 5 | -1 | 1230 | ||
| 6 | -2 | 1200 | ||
| 7 | -3 | 1000 |
B5をクリックしてください。=ROUND($D$2,-1)で、10単位に丸めています。次にD2を48750に変えてみます。-2の行は48800を表示します。切り捨てる最初の桁が5なら、必ず切り上げるからです。
ROUNDと表示形式の違い
セルの表示形式を0.00にする(ホーム > 数値 > 小数点以下の表示桁数を減らす)と、変わるのはセルの見た目だけです。元の値はそのまま残り、そのセルを読む数式はすべて元の値を使います。ROUNDは値そのものを変えます。
この違いは合計に表れます。下では、A列の各価格は1.333を小数点以下2桁で表示したものなので、列は1.33、1.33、1.33と読めますが、合計は4.00と表示されます。B列は先に各価格を丸めているので、合計は3.99です。
| A | B | |
|---|---|---|
| 1 | Formatted only | Rounded |
| 2 | 1.33 | 1.33 |
| 3 | 1.33 | 1.33 |
| 4 | 1.33 | 1.33 |
| 5 | 4.00 | 3.99 |
どちらの合計も間違いではありません。4.00は本当の合計3.999を小数点以下2桁で表示したもので、3.99は請求書に印刷される値の合計です。1行ごとに請求する金額のように、丸めた数が本当の数であるときはROUNDを使います。何も変えずに表示する桁数だけを減らすなら、表示形式を使います。ファイル > オプション > 詳細設定 >「表示桁数で計算する」はブック全体で表示どおりの値を保存させ、元に戻せません。ROUNDのほうが安全です。
Excelの0.5の丸め方
ROUNDは5を0から遠いほうへ丸めます。2.5は3に、-2.5は-3になります。最初のシートの3行目から5行目を見てください。2.675は2.68、12.5は13、-2.5は-3になります。
代わりに5を最も近い偶数に丸めるツールもあり(銀行型の丸め)、その場合2.5は2になります。ExcelのROUND関数はそうしませんが、VBAのRound関数はそうするので、マクロとセルの結果が食い違う原因になります。GoogleスプレッドシートのROUNDも0から遠いほうへ丸めます。
数式の結果を四捨五入する
計算全体をROUNDで囲めば、最終結果だけが丸められます。ここでは税率8.25%を含む価格をセント単位に丸めています。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Item | Price | Tax rate | With tax |
| 2 | Lamp | $19.99 | 8.25% | $21.64 |
| 3 | Chair | $74.50 | 8.25% | $80.65 |
| 4 | Desk | $129.00 | 8.25% | $139.64 |
平均、割合、割り算でも同じ形が使えます。=ROUND(AVERAGE(B2:B6),1)は小数点以下1桁の平均を出します。丸めた数を文章の中で文字列として使いたいなら、=TEXT(A2,"0.00")で両方を一度にできます(TEXT関数を参照)。
MROUNDで5単位、0.05単位、15分単位に丸める
=MROUND(number, multiple)は、任意の数の最も近い倍数に丸めます。5セント刻みの価格、12個入りの箱の数量、15分単位の時刻に使います。
| A | B | C | |
|---|---|---|---|
| 1 | Value | Multiple | MROUND |
| 2 | 12 | 5 | 10 |
| 3 | 13 | 5 | 15 |
| 4 | 2.37 | 0.05 | 2.35 |
| 5 | 9:08 | 0:15 | 9:15 |
MROUNDもちょうど半分の値を0から遠いほうへ丸めるので、12.5を5の倍数にすると15になります。数値と倍数は同じ符号でなければなりません。=MROUND(-12,5)は#NUM!を返し、=MROUND(-12,-5)は-10になります。倍数に常に切り上げる、または切り捨てるには、ROUNDUPとROUNDDOWNのページにあるCEILINGとFLOORを使います。
やってみよう: 平均を四捨五入する
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Student | Score | Average | ||
| 2 | Ana | 78 | |||
| 3 | Ben | 91 | |||
| 4 | Cleo | 85 | |||
| 5 | Dan | 66 | |||
| 6 | Eve | 88 | |||
| 7 | Finn | 73 |
やってみよう: E2に、B2:B7の点数の平均を小数点以下1桁に四捨五入して表示してください。
ヒント: AVERAGEをROUNDの中に入れ、桁数には1を使います。
どの丸めの関数を使うか
| 目的 | 数式 | 12.345の結果 |
|---|---|---|
| 最も近い値、小数点以下2桁 | =ROUND(A2,2) | 12.35 |
| 最も近い整数 | =ROUND(A2,0) | 12 |
| 10単位 | =ROUND(A2,-1) | 10 |
| 常に切り上げ | =ROUNDUP(A2,1) | 12.4 |
| 常に切り捨て | =ROUNDDOWN(A2,1) | 12.3 |
| 0.5の最も近い倍数 | =MROUND(A2,0.5) | 12.5 |
| 小数部分を捨てる | =TRUNC(A2)または=INT(A2) | 12 |
よくある間違いは、長い計算の途中で丸め、最後にもう一度丸めることで、最後の桁がずれることがあります。丸めるのは1回だけ、実際に報告したり請求したりする値を出す段階にしてください。
よくある質問
Excelで小数点以下2桁に四捨五入するには?
=ROUND(A2,2)を使います。保存される値そのものが変わるので、3.14159は3.14になり、後の数式も3.14を使います。セルの表示形式を0.00にしても見た目が変わるだけで、元の値はそのまま残ります。
Excelで整数に四捨五入するには?
=ROUND(A2,0)を使います。12.5は13に、12.4は12になります。常に切り上げる、または常に切り捨てるなら、=ROUNDUP(A2,0)か=ROUNDDOWN(A2,0)を使います。
Excelで十の位、百の位、千の位で四捨五入するには?
ROUNDの桁数をマイナスにします。=ROUND(A2,-1)は10単位に、=ROUND(A2,-2)は100単位に、=ROUND(A2,-3)は1000単位に丸めます。1234.567はそれぞれ1230、1200、1000になります。
Excelは0.5を切り上げますか、切り捨てますか?
ROUNDは5を0から遠いほうへ丸めます。=ROUND(2.5,0)は3、=ROUND(-2.5,0)は-3です。VBAのRound関数が使う銀行型の丸め(偶数への丸め)は使いません。
Excelで5単位に丸めるには?
=MROUND(A2,5)を使います。12は10に、13は15になります。MROUNDは任意の倍数に丸められるので、5セント刻みの価格なら=MROUND(A2,0.05)です。