CEILING関数とCEILING.MATH関数 -使い分け-

CEILING関数とCEILING.MATH関数 -使い分け-

本記事は「CEILING関数とCEILING.MATH関数の違いと使い分け」に関して解説します。

CEILING(天井)」、
「MATH」は「mathematics(数学)」の略語です。

まず、CEILINGは、

与えられた数値を切り上げる(つまり、数値を上に向かって「天井」に近づける)

という概念です。

CEILINGにMATHが付与されているので、

CEILINGに「mathematics(数学的)」の機能が追加されています。

したがって、

CEILING関数とCEILING.MATH関数の主な違いは、

「mathematics(数学的)」の機能がCEILING.MATH関数に追加されている点です。

具体的な違いや使い分けについては、以下のセクションで詳しく説明します。

なお、各関数の詳細は以下に記載があります。

「バージョン」の違い

  • CEILING関数はExcel 365、Excel2010以降で利用可能です。
  • CEILING.MATH関数は、Excel 365、Excel2013以降で利用可能です。

つまり、

CEILING.MATH関数の方が新しいわけです。
CEILING.MATH関数は、CEILING関数のバージョンアップした関数となっています。

Microsoftとしては、CEILING.MATH関数を使いましょうということだと思います。

CEILING関数とCEILING.MATH関数の関係図:CEILING.MATH関数は、CEILING関数のバージョンアップした関数

CEILING関数の構文

まずは各関数の構文を確認しましょう。

CEILING(数値, 基準値)

説明:

  • 数値を、指定した基準値の倍数値に切り上げる関数

引数:

  • 数値(必須)
    • 切り上げたい数値を指定
  • 基準値(必須)
    • 倍数の基準となる数値を指定
CEILING 関数 – Microsoft サポート より改変

CEILING.MATH(数値, [基準値], [モード]) ※[]は省略可能

説明:

  • 数値を最も近い整数、または 基準値の倍数で最も近い数に切り上げます。

引数:

  • 数値(必須)
    • 切り上げたい数値を指定
  • [基準値](任意)
    • 倍数の基準となる数値を指定
    • 省略された場合は「1」となるため、最も近い整数値(≒1の倍数値)に切り上げる
  • [モード](任意)
    • 0または省略
      • 数値が正の場合
        • 0から離れた整数に切り上げる
      • 数値が負の場合
        • 0に近い整数に切り上げる
    • 0以外の数値
      • [数値]が正の場合も負の場合も0から離れた整数に切り上げる
CEILING.MATH 関数 – Microsoft サポート より改変

「機能」の違い

下記は公式ドキュメントの内容です。

  • CEILING関数
    • 与えられた数値を指定した基準値の倍数値で切り上げる
  • CEILING.MATH関数
    • 数値を最も近い整数、または 基準値の倍数で最も近い数に切り上げる

切り上げるは同じですが、それ以外は何とも分かりづらいですね。

ただ、少なくとも、切り上げ方が違っていることは分かります。

「引数」の違い

CEILING関数とCEILING.MATH関数の関係図:CEILING.MATH関数は、CEILING関数のバージョンアップした関数

CEILING(数値, 基準値)

CEILING.MATH(数値, [基準値], [モード]) ※[]は省略可能

CEILING.MATH関数では、
引数に[モード]が追加、基準値の省略可能になっています。


CEILING関数からCEILING.MATH関数へバージョンアップにより、
引数に2つの違いが生まれています。

基準値[モード]の違いを確認しよう

基準値の違い

基準値を省略して、両関数の動きを確認してみましょう。

=CEILING(“24.3”, ) -> 0


24.3が0になっています。

Microsoft社の説明では、省略不可となっていますが、0が返されました。

CEILING関数は基準値が0の場合、0を返すようです。

おそらく、裏では、0の倍数値が基準値として設定されていると考えられます。

=CEILING.MATH(24.3, ) -> 25


基準値が省略された場合は「1」が指定されます。
つまり、1の倍数値が基準値として設定されているため、25が返ります。

したがって、基準値を省略したい場合はCEILING.MATH関数を使用してください。

[モード]の違い

[モード]は、If-Thenによつて、両関数の動き方が変わります。
まずは、If-Thenルールを整理します。

一番右のIf-Thenルールのみ、CEILING関数との結果と違ってきます。
(なお、基準値はIf-Thenルールに入りません)

If-Thenルールとは:

特定の条件が満たされた場合に、ある特定の処理を実行するためのルールです。このルールは、もし条件Aが成立したら、それに続く処理Bを実行するという形式を持ちものです。

関数の結果が違うケース

数値が負、[モード]が0以外
CEILING関数とCEILING.MATH関数 -使い分けガイドライン- 数値が負、[モード]が0以外のケース

=CEILING(“-24.5”, 5) -> 20

=CEILING.MATH(“-24.5”, 5, -1) -> 25

数値が負で、[モード]が指定されてると、CEILING関数とは違う動きになります。

単純に、大きい数値に切り上げていません

数値が負の値、[基準値]が1、[モード]は1のため、0から離れる方向に整数値に切り上げます。

つまり、CEILING関数とCEILING.MATH関数とでは、

負の数に対する動作が変わります。

[モード]を使用し、負の数に対する動作を指定できます。

各関数の結果が同じケース

数値が正、[モード]が0または省略
CEILING関数とCEILING.MATH関数 -使い分けガイドライン- 数値が正、[モード]が0または省略

=CEILING(“24.5”, 5) -> 25

=CEILING.MATH(“24.5”, 5, ) -> 25

CEILING関数を適用すると、24.5から25に切り上げられます。
基準値が5の倍数値だからです。なお、CEILING関数は[モード]は指定できません。

CEILING.MATH関数を適用すると、
数値が正の値で、[モード]は省略されているため、
0から離れる方向に、5の倍数値に切り上げています。

つまり、

いずれの関数も同じ動作です。下図赤線のIF-THNEルールに該当します。

数値が正、[モード]が0以外
CEILING関数とCEILING.MATH関数 -使い分けガイドライン-  数値が正、[モード]が0以外

=CEILING(“24.5”, 5) -> 25

=CEILING.MATH(“24.5”, 5, -1) -> 25

CEILING関数を適用すると、24.5から25に切り上げられます。
基準値が5の倍数値だからです。なお、CEILING関数は[モード]は指定できません。

CEILING.MATH関数を適用すると、
数値が正の値で、[モード]が-1のため、
0から離れる方向に、5の倍数値に切り上げています。

つまり、

いずれの関数も同じ動作です。下図赤線のIF-THNEルールに該当します。

数値が負、[モード]が0または省略
CEILING関数とCEILING.MATH関数 -使い分けガイドライン- 数値が負、[モード]が0または省略

=CEILING(“-24.5”, 5) -> -20

=CEILING.MATH(“-24.5”, 5, 0) -> -20

CEILING関数を適用すると、-24.5から-20に切り上げられます。
基準値が5の倍数値だからです。なお、CEILING関数は[モード]は指定できません。

CEILING.MATH関数を適用すると、
数値が正の値で、[モード]が-1のため、
0に近づける方向に、5の倍数値に切り上げています。

つまり、

いずれの関数も同じ動作です。下図赤線のIF-THNEルールに該当します。

使い分けのガイドライン

基本的に、CEILING.MATH関数を使用しておけば良いと思います。

なぜならば、CEILING関数では下記のケースに対応できないからです。

  • 基準値を省略したい
  • 負の数値に対する動作で、0から離れる方向に整数に切り上げたい

CEILING.MATH関数であれば、
第2引数と第3引数を適切に設定すれば対応できるからです。

最後に

本記事は「CEILING関数とCEILING.MATH関数の違いと使い分け」に関して解説しました。

CEILING関数とCEILING.MATH関数の主な違いは、負の数値に対する動作でした。

負の数値に対する動作を指定したい時は、
CEILING.MATH関数を使用しないとダメです。

総じて、

CEILING.MATH関数を使用しておけば問題ないこと

をお伝えしました。

—————————————
参考記事
—————————————

原理原則に関する記事

Excel関数自体の原理原則に関する記事です。こちらを参照すると、個別の関数の理解がさらに深まるでしょう。

構文に関する記事

Excel関数の引数と戻り値は何だっけ?という時に、役立つ記事です。

Excel関数にはそれぞれ構文がある

Excel関数には構文があります。それが、引数と戻り値です。構文に沿えばいいだけです。言わば、数学の公式のようなものです。理論を知らなくても、公式に当てはめれば答え…

Excel関数の引数とは

Excelの引数は、料理を完成させるための材料のようなものです。しかも、材料に種類があります。その種類を理解すると、Excel関数を上手く使いこなせるようになります。

ダイアログボックスの使い方に関する記事

Excel関数名は何だっけ?VLOOKUP関数の使い方は何だっけ?という時に、ダイアログボックスを使うと便利です。
下記はそのダイアログボックスに関する記事です。

Excelの検索ダイアログから、関数を探す

Excelの検索ダイアログに使えば、目的の関数を発見しやすくなります。WEB検索する前に、Excel関数の検索ダイアログを使ってみましょう。

Excelのダイアログに沿って、関数を使う

Excelのダイアログに使えば、関数の使い方を調べることができます。言わば、関数のガイドラインのようなものです。

参照形式に関する記事

関数式をコピーする時はどうしたらいい?
$マークは、どう付けたらいいだろう?
といった悩みをお持ちの方は以下をご覧ください。

絶対参照/相対参照/複合参照とは

絶対参照/相対参照/複合参照とは何かをどこよりも分かりやすく解説します。

絶対参照/相対参照/複合参照の使い方

「絶対参照」「相対参照」「複合参照」は、どうやって使うのかを紹介します。 ポイントは、「$マークは、直後にあるモノを固定する」です。

—————————————
参考記事
—————————————

原理原則に関する記事

Excel関数自体の原理原則に関する記事です。こちらを参照すると、個別の関数の理解がさらに深まるでしょう。

構文に関する記事

Excel関数の引数と戻り値は何だっけ?という時に、役立つ記事です。

Excel関数にはそれぞれ構文がある

Excel関数には構文があります。それが、引数と戻り値です。構文に沿えばいいだけです。言わば、数学の公式のようなものです。理論を知らなくても、公式に当てはめれば答え…

Excel関数の引数とは

Excelの引数は、料理を完成させるための材料のようなものです。しかも、材料に種類があります。その種類を理解すると、Excel関数を上手く使いこなせるようになります。

ダイアログボックスの使い方に関する記事

Excel関数名は何だっけ?VLOOKUP関数の使い方は何だっけ?という時に、ダイアログボックスを使うと便利です。
下記はそのダイアログボックスに関する記事です。

Excelの検索ダイアログから、関数を探す

Excelの検索ダイアログに使えば、目的の関数を発見しやすくなります。WEB検索する前に、Excel関数の検索ダイアログを使ってみましょう。

Excelのダイアログに沿って、関数を使う

Excelのダイアログに使えば、関数の使い方を調べることができます。言わば、関数のガイドラインのようなものです。

参照形式に関する記事

関数式をコピーする時はどうしたらいい?
$マークは、どう付けたらいいだろう?
といった悩みをお持ちの方は以下をご覧ください。

絶対参照/相対参照/複合参照とは

絶対参照/相対参照/複合参照とは何かをどこよりも分かりやすく解説します。

絶対参照/相対参照/複合参照の使い方

「絶対参照」「相対参照」「複合参照」は、どうやって使うのかを紹介します。 ポイントは、「$マークは、直後にあるモノを固定する」です。