2023年6月29日【ID:0】
【Excel】指定の倍数で金額を求める(時間にも活用できる)
ある金額を切り上げ、もしくは切り下げて、XX250円やXX500円といった250円の倍数など指定の倍数にする方法について解説していきます。
指定の倍数を求める
金額などの数値を切り上げた指定の倍数を求めるには「CEILING.MATH関数」、切り下げた指定の倍数を求めるには「FLOOR.MATH関数」を使用します。
それぞれの使い方は以下の通りです。
=CEILING.MATH(数値, [基準値], [モード])
// 数値を基準値の倍数に切り上げる
// 数値:元の数値
// [基準値]:切り上げの基準となる数値(省略時は1)
// [モード]:「0(省略時)」数値が負の場合に0に近い数値に切り上げる、「0以外」数値が負の場合に0から離れた数値に切り上げる
=FLOOR.MATH(数値, [基準値], [モード])
// 数値を基準値の倍数に切り下げる
// 数値:元の数値
// [基準値]:切り下げの基準となる数値(省略時は1)
// [モード]:「0(省略時)」数値が負の場合に0に近い数値に切り下げる、「0以外」数値が負の場合に0から離れた数値に切り下げる
各引数の[基準値]と[モード]は省略可能です。
以下の画像は、色んなパターンで比較したものになります。
250円の倍数の金額を求める
では、これらの関数を用いて250円の倍数の金額を求めていきます。
好みの倍数の値を求める場合は、引数の[基準値]を設定することで求めることができます。
=CEILING.MATH(B4,250)
=FLOOR.MATH(B4,250)
以下のように、直接数式を入力して求めることもできます。
=FLOOR.MATH(B4*C4,500)
時間にも活用できる
また、Excel上の時間はシリアル値という数値で管理されているため、時間に関しても好みの倍数(15分単位や30分単位など)を求めることができます。
シリアル値とは1日を1という数値で表現したものになります。
例えば、15分単位で切り捨てて求めたい場合は、[基準値]に15分のシリアル値を設定します。
15分のシリアル値は、1日(24時間×60分)の内の15分になるため、以下のような数式で求めることができます。
=15/(24*60)
この数値を[基準値]に設定して求めた結果が以下になります。
=FLOOR.MATH(B4,15/(24*60))
ただ、毎回このように計算するのが面倒な場合は、時間を「"(ダブルクォーテーション)」で囲むことで直接指定することもできます。
=FLOOR.MATH(B4,"0:15")
補足
CEILING.MATH関数とFLOOR.MATH関数に似た関数で、CEILING関数とFLOOR関数があります。
これらの違いは以下の2つになります。
CEILING関数とFLOOR関数は、
・引数にモードがない
・引数の基準値を省略できない
実は、CEILING.MATH関数とFLOOR.MATH関数はExcel2013から登場した進化した関数になります。
そのため、Excelファイルの送り先によっては、古いCEILING関数やFLOOR関数を使用する方が良い場合もあるかと思います。
また、最も近い指定の倍数を求めたい場合は「MROUND関数」があるため、一緒に覚えておくと何かと役立つかと思います。
=MROUND(数値, 倍数)
// 指定の倍数を求める
// 数値:元の数値
// 倍数:切り下げの基準となる数値(省略不可)