エクセルで数値を扱う際、「小数点以下を四捨五入して整数にしたい」「消費税を計算した結果を切り捨てたい」「特定の桁数に丸めてキリのいい数値にしたい」といった場面は日常的に発生します。
こうした「近似値を求める」操作は、ROUND・ROUNDUP・ROUNDDOWN・CEILINGなどの関数を使って実現できます。
数値の丸め方を誤ると計算結果に誤差が生じてしまうこともあるため、各関数の動作の違いを正しく理解しておくことが重要です。
この記事では、近似値を求めるための関数の使い方と使い分けについて、具体的な例を交えながら解説していきます。
近似値を求める関数を正しく使い分けることが計算精度の鍵
それではまず、エクセルで近似値を求めるための主要な関数の概要と使い分けの考え方から解説していきます。
ROUND関数・ROUNDUP関数・ROUNDDOWN関数の違い
エクセルで数値を丸める関数の代表は以下の3つです。
ROUND(数値, 桁数):四捨五入して指定した桁数に丸める
ROUNDUP(数値, 桁数):切り上げて指定した桁数に丸める
ROUNDDOWN(数値, 桁数):切り捨てて指定した桁数に丸める
「桁数」の指定は、正の数で小数点以下の桁数を、0で整数、負の数で10の位・100の位などの単位での丸めを意味します。
桁数の指定を間違えると意図しない丸め結果になるため、この部分を特に注意して設定しましょう。
桁数の指定方法と具体例
=ROUND(123.456, 2)→ 123.46(小数点以下2桁に四捨五入)
=ROUND(123.456, 0)→ 123(整数に四捨五入)
=ROUND(123.456, -1)→ 120(10の位で四捨五入)
=ROUND(123.456, -2)→ 100(100の位で四捨五入)
負の桁数を使うと「1000円単位」「100円単位」などキリのいい数値への丸めが可能になり、予算資料や見積書など実務の資料作成に非常に役立ちます。
丸め方の選択基準:四捨五入・切り上げ・切り捨てをいつ使うか
どの丸め方を使うかは、用途によって異なります。
消費税の計算では切り捨て(ROUNDDOWN)を使うことが多く、時間給の計算では切り上げ(ROUNDUP)を使うケースがあります。
一般的なデータの丸めでは四捨五入(ROUND)が使われますが、業種や規則によって丸め方の基準が決まっている場合はその規則に従いましょう。
CEILING関数・FLOOR関数を使った単位丸めの方法
続いては、特定の単位に丸めるための関数として、CEILING関数とFLOOR関数の使い方を確認していきます。
CEILING関数で指定した倍数に切り上げる方法
CEILING関数は、指定した「基準値」の倍数に切り上げる関数です。
=CEILING(数値, 基準値)
例:=CEILING(153, 10)→ 160(10の倍数に切り上げ)
例:=CEILING(153, 50)→ 200(50の倍数に切り上げ)
たとえば「10円単位に切り上げて金額を計算したい」「5個単位で発注したい」といった場面で非常に便利な関数です。
倍数単位の切り上げはROUNDUP関数では対応しにくいため、CEILING関数の出番となります。
FLOOR関数で指定した倍数に切り捨てる方法
FLOOR関数はCEILING関数の逆で、指定した基準値の倍数に切り捨てます。
=FLOOR(数値, 基準値)
例:=FLOOR(153, 10)→ 150(10の倍数に切り捨て)
例:=FLOOR(153, 50)→ 150(50の倍数に切り捨て)
時刻の丸めにも活用でき、たとえば作業時間を15分単位に切り捨てる場合などにも応用できます。
MROUND関数で最も近い倍数に丸める方法
MROUND関数は、指定した基準値の最も近い倍数に四捨五入する関数です。
=MROUND(数値, 倍数)
例:=MROUND(153, 10)→ 150(10の倍数で最も近い値に丸める)
例:=MROUND(157, 10)→ 160(160の方が近いため切り上げ)
切り上げでも切り捨てでもなく「最も近い値」に丸めたい場面ではMROUND関数が最適です。
近似値計算で注意すべき浮動小数点の誤差と対処法
続いては、近似値計算において発生しやすい浮動小数点の誤差と、その対処法を確認していきます。
エクセルの浮動小数点誤差とは何か
エクセルを含む多くのコンピュータは、内部で数値を2進数で表現しているため、10進数の小数を正確に表現できない場合があります。
たとえば「0.1+0.2」の計算結果が「0.3」ではなく「0.30000000000000004」のような微妙にズレた値になることがあります。
この誤差は通常の計算には影響しませんが、条件分岐やIF関数での比較に影響を与えることがあるため注意が必要です。
ROUND関数で浮動小数点誤差を吸収する方法
浮動小数点の誤差を吸収するためにも、ROUND関数は有効です。
計算結果を必要な精度に丸めておくことで、微小な誤差が条件判定に影響しないようにすることができます。
比較演算を行う前に計算結果をROUND関数で丸めておく習慣をつけると、浮動小数点誤差による予期しない動作を防ぐことができます。
特に金額計算や在庫管理など、精度が重要なシートでは積極的に活用しましょう。
表示形式と実際の値の違いに注意する
エクセルのセルには「表示形式」という概念があり、見た目上の桁数と実際にセルが保持している値が異なる場合があります。
たとえばセルの表示形式で小数点以下2桁と設定しても、セルの値そのものは変わりません。
表示を丸めたいだけなら書式設定で対応し、計算に使う値そのものを丸めたい場合はROUND関数を使うという使い分けが重要です。
まとめ
この記事では、エクセルで近似値を求める方法について、ROUND・ROUNDUP・ROUNDDOWN関数の基本からCEILING・FLOOR・MROUND関数の応用、浮動小数点誤差への対処まで幅広く解説しました。
数値の丸め方はビジネスの場面ごとに異なるため、四捨五入・切り上げ・切り捨て・倍数丸めをそれぞれ適切に使い分けることが重要です。
表示形式と実際の値の違いも意識しながら、精度の高い計算シートを作成していきましょう。
今回紹介した関数を活用することで、エクセルでの数値管理の精度と信頼性が大きく向上するはずです。