スプレッドシートのMROUND関数の使い方|指定倍数に丸め

スポンサーリンク

スプレッドシートのMROUND関数の使い方|指定倍数に丸め

スプレッドシートで「500円単位の価格表を作りたい」「15分単位で勤怠を丸めたい」と思ったことはありませんか?

ROUND関数は小数第2位や10の位といった「桁数」で丸めます。でも「500円刻み」「15分刻み」のように倍数で丸めたい場面には向いていません。

そんなときに使うのがMROUND関数です。指定した倍数の中でいちばん近い値に丸めてくれます。

この記事では基本の書き方から倍数の指定パターン、実務での使いどころまで紹介します。

MROUND関数とは?

MROUND関数(読み方: エムラウンド関数)は、数値を指定した倍数の最も近い値に丸める関数です。

名前は英語の「Multiple ROUND(倍数で丸める)」が由来です。たとえば「1,280円」を500円単位で丸めると「1,500円」になります。

ROUND関数との最大の違いは「第2引数の指定方法」です。ROUND関数は「桁数」を指定しますが、MROUND関数は「倍数」を直接指定します。「100単位」「0.5刻み」のように、好きな単位で丸められるのがポイントです。

MROUND関数にできることをまとめると、次のとおりです。

  • 数値を指定した倍数の最も近い値に丸める
  • 500円単位・100円単位の価格設定に使う
  • 15分単位・30分単位の勤怠管理に使う
  • 50個単位・100個単位のロット発注に使う

NOTE

MROUND関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。

MROUND関数の書き方(構文と引数)

基本構文

=MROUND(値, 倍数)

カッコの中に「丸めたい数値」と「何の倍数にするか」を指定します。

引数の説明

引数必須/任意説明
必須丸めたい数値やセル参照、数式
倍数必須丸める基準となる倍数

引数は2つだけです。どちらも省略できません。

ROUND関数の第2引数は「桁数(整数)」ですが、MROUND関数の第2引数は「倍数(小数もOK)」です。この違いが使い分けのカギになります。

倍数の指定パターン

MROUND関数は倍数の値によって丸め方が変わります。代表的なパターンを表にまとめます。

倍数意味例: MROUND(1234, 倍数)結果
10001,000単位に丸め=MROUND(1234, 1000)1000
500500単位に丸め=MROUND(1234, 500)1000
100100単位に丸め=MROUND(1234, 100)1200
5050単位に丸め=MROUND(1234, 50)1250
1010単位に丸め=MROUND(1234, 10)1230
55単位に丸め=MROUND(1234, 5)1235
0.50.5単位に丸め=MROUND(1.3, 0.5)1.5
0.10.1単位に丸め=MROUND(1.34, 0.1)1.3

ポイントは「倍数を変えるだけで丸める刻みを自由に変えられる」ことです。ROUND関数の桁数パターンよりも直感的に理解できます。

TIP

倍数に小数を指定することもできます。たとえば「0.25刻み」で丸めたい場合は =MROUND(A1, 0.25) です。

基本的な使い方

整数を100単位に丸める

いちばんシンプルな例です。A2に金額が入っているとします。

=MROUND(A2, 100)

A2が「1,280円」なら結果は「1,300円」です。A2が「1,240円」なら「1,200円」です。ちょうど中間の「1,250円」の場合はゼロから離れる方向に丸まり「1,300円」になります。

小数を0.5単位に丸める

評価スコアなど0.5刻みにしたい場面です。

=MROUND(B2, 0.5)

B2が「3.7」なら「3.5」、「3.8」なら「4.0」に丸まります。「3.75」ちょうどなら「4.0」です。

丸めの方向を確認する

MROUND関数は「最も近い倍数」に丸めます。もし2つの倍数のちょうど中間にある場合は、ゼロから遠い方の倍数に丸まります。

=MROUND(25, 10)

25は「20」と「30」のちょうど中間です。この場合、ゼロから遠い「30」が返ります。

実務で使える活用パターン

500円単位の価格設定

商品の売価を500円単位に揃えたいときに便利です。A2に原価ベースの計算価格が入っているとします。

=MROUND(A2, 500)

たとえば計算で「1,780円」になった場合、「2,000円」に丸まります。「1,680円」なら「1,500円」です。

価格を常に切り上げたいならROUNDUP関数ではなくCEILING関数を使います。CEILING関数は倍数指定で常に切り上げます。

=CEILING(A2, 500)

「1,680円」でも「2,000円」に切り上がります。利益を確保したい場合はCEILING関数を選びましょう。

15分単位の勤怠管理

「15分未満の端数を最も近い15分に丸める」ルールの場合です。C2に時刻が入っているとします。

=MROUND(C2, "0:15")

時刻データの場合は倍数を「”0:15″」のように時刻形式で指定します。「9:07」なら「9:00」、「9:08」なら「9:15」に丸まります。

NOTE

勤怠の端数を常に切り捨てたい場合はFLOOR関数、常に切り上げたい場合はCEILING関数を使います。会社のルールに合わせて関数を選んでください。

50個単位のロット発注

発注数を50個単位にそろえたいときに使います。B2に必要数量が入っているとします。

=MROUND(B2, 50)

必要数が「120個」なら「100個」に丸まります。不足を防ぎたいならCEILING関数で「150個」に切り上げるのが安全です。

=CEILING(B2, 50)

在庫を抱えたくない場面ではMROUND関数、欠品を避けたい場面ではCEILING関数と使い分けましょう。

100円単位の見積金額

見積書で金額を100円単位にそろえるケースです。

=MROUND(A2, 100)

「456,789円」なら「456,800円」になります。

同じことは =ROUND(A2, -2) でもできます。ただし「100単位」と直接書けるMROUND関数のほうが意図がわかりやすいです。桁数の正負で悩む必要がないのがMROUNDの強みです。

よくあるエラーと対処法

MROUND関数はシンプルな関数ですが、エラーが出ることもあります。

エラー原因対処法
#NUM!値と倍数の符号が異なる両方とも正、または両方とも負にそろえる
#VALUE!値や倍数に文字列が入っているセル参照先が数値かどうか確認する
#ERROR!構文ミス(カンマ忘れ等)数式の入力内容を見直す
結果が0倍数に0を指定している0以外の倍数を指定する
結果が期待と違う中間値の丸め方向を誤解しているちょうど中間はゼロから遠い方に丸まる

値と倍数の符号が異なるとき

MROUND関数は値と倍数の符号が一致しないとエラーになります。

=MROUND(-1280, 500)

結果は#NUM!エラーです。負の値を丸めるには倍数も負にします。

=MROUND(-1280, -500)

結果は「-1500」です。負の値を扱うときは倍数の符号に注意してください。

倍数に0を指定したとき

倍数に0を指定すると結果は0になります。エラーにはなりません。

=MROUND(1234, 0)

結果は「0」です。意図せず倍数のセルが空や0になっていないか確認しましょう。

似た関数との違い・使い分け

スプレッドシートには倍数で丸める関数が3つあります。丸めの方向が異なるので、目的に応じて使い分けましょう。

関数丸め方第2引数使いどころ
MROUND最も近い倍数倍数価格設定・見積金額の丸め
CEILING常に切り上げ(倍数)倍数不足させたくない場面(発注数・時間)
FLOOR常に切り捨て(倍数)倍数余分に取りたくない場面(勤怠切り捨て)
ROUND四捨五入桁数小数第2位・10の位など桁数指定の丸め
ROUNDUP常に切り上げ桁数箱数計算など桁数指定の切り上げ
ROUNDDOWN常に切り捨て桁数消費税切り捨てなど桁数指定の切り捨て

MROUND・CEILING・FLOORの使い分け

この3関数は「倍数で丸める」という共通点があります。違いは丸めの方向だけです。

具体例で比較しましょう。「1,280円」を500円単位で丸める場合です。

=MROUND(1280, 500)   → 1500(最も近い倍数)
=CEILING(1280, 500)   → 1500(切り上げ)
=FLOOR(1280, 500)     → 1000(切り捨て)

次に「1,680円」で比較します。

=MROUND(1680, 500)   → 1500(最も近い倍数)
=CEILING(1680, 500)   → 2000(切り上げ)
=FLOOR(1680, 500)     → 1500(切り捨て)

使い分けの基準は次のとおりです。

  • 中立的に丸めたい → MROUND
  • 不足を防ぎたい → CEILING
  • 余分を出したくない → FLOOR

MROUNDとROUNDの使い分け

MROUNDとROUNDの違いは「第2引数の指定方法」です。

  • ROUND: 桁数で指定(小数第2位、10の位など)
  • MROUND: 倍数で指定(100単位、500単位、0.5刻みなど)

「100単位に丸めたい」場合、どちらでも実現できます。

=ROUND(A2, -2)       → 桁数「-2」で100の位に丸め
=MROUND(A2, 100)     → 倍数「100」で100単位に丸め

結果は同じです。桁数の正負に慣れているならROUND関数、倍数で直感的に指定したいならMROUND関数が向いています。

ただし「500単位」「15分単位」のように10のべき乗以外の倍数はROUND関数では対応できません。この場合はMROUND関数の出番です。

TIP

丸め関数の詳しい使い方は、それぞれの個別記事で解説しています。ROUND関数ROUNDUP関数ROUNDDOWN関数INT関数の記事もあわせてチェックしてみてください。

Excelとの違い

MROUND関数はExcelとGoogleスプレッドシートでほぼ同じ動作です。

項目ExcelGoogleスプレッドシート
構文=MROUND(数値, 倍数)=MROUND(値, 倍数)
動作最も近い倍数に丸め最も近い倍数に丸め
符号不一致時#NUM!エラー#NUM!エラー
倍数0の場合0を返す0を返す

引数名の表記が若干異なるだけで、機能は完全に同じです。ExcelとSheetsでファイルを共有しても、計算結果がずれることはありません。

TIP

Excelの丸め関数について詳しくはExcelの丸め関数10種を完全比較の記事で解説しています。

まとめ

MROUND関数は、数値を指定した倍数の最も近い値に丸める関数です。

ポイントを整理します。

  • 構文は =MROUND(値, 倍数) の2引数だけ
  • ROUND関数が「桁数」で丸めるのに対し、MROUNDは「倍数」で丸める
  • 500円単位・15分単位・50個単位など、自由な刻みで丸められる
  • CEILING(切り上げ)・FLOOR(切り捨て)と使い分けると便利
  • ROUNDROUNDUPROUNDDOWNは桁数指定の丸めで使う

まずは =MROUND(A1, 100) で100円単位の丸めから試してみてください。

タイトルとURLをコピーしました