• 作成日 : 2025年8月5日

ExcelのFLOOR関数とは?使い方や具体例、ROUND関数との違いを解説

数値を指定した基準値で切り捨てるなら、ExcelのFLOOR関数(フロア関数)が最適です。

この関数を使えば、「100円単位で切り捨てる」「5分単位で丸める」といった処理を一瞬で実現できます。手動で桁を揃えたり、IF関数で複雑な条件式を書いたりする必要はもうありません。

本記事では、初めての方にもわかるよう、FLOOR関数の基本構文から、日常業務で活躍する実践的な使い方、ROUND関数との違いまでをわかりやすく解説します。

FLOOR関数とは?

ExcelのFLOOR関数は、指定した数値を「基準値の倍数」で切り捨てるための関数です。たとえば「1234を100の倍数に切り捨てたい」といったケースで、FLOOR関数を使えば「1200」のように瞬時に処理できます。単位の丸め処理や集計の整形に大いに役立つ便利な関数です。

FLOOR関数は小数点以下の切り捨てとは異なる

FLOOR関数は、数値の「切り捨て」に特化した関数ですが、一般的な小数点以下の切り捨てとは異なります。たとえば、通常の切り捨て関数(TRUNC関数など)が「3.75」を「3」にするのに対し、FLOOR関数は「特定の単位」で切り捨てを行うのが特徴です。

  • 通常の切り捨て(例:TRUNC関数):小数点以下の桁数を指定して、単純に切り捨てます。
    • TRUNC(3.75, 0) → 3
    • TRUNC(3.25, 0) → 3
  • FLOOR関数:指定した基準値の倍数で切り下げます。
    • FLOOR(3.75, 0.5) → 3.5 (0.5の倍数で3.75を超えない最大の数値)
    • FLOOR(3.25, 0.5) → 3.0 (0.5の倍数で3.25を超えない最大の数値)

このように、FLOOR関数は「まるめる単位(基準値)」を指定できる点が大きな特徴です。この「まるめる単位」が、FLOOR関数を多様な場面で活用できる理由となります。

FLOOR関数の書式と引数

FLOOR関数の書式は以下の通りです。

=FLOOR(数値, 基準値)

それぞれの引数について詳しく見ていきましょう。

  • 数値 (必須)
    • 丸めの対象となる数値、または数値が入力されたセルを指定します。
    • 正の数、負の数、ゼロのいずれでも指定可能です。
    • 日付や時刻を表すシリアル値も指定できます。
  • 基準値 (必須)
    • 数値を切り捨てる際の基準となる倍数を指定します。
    • 正の数、負の数、ゼロのいずれでも指定可能ですが、数値と基準値は同じ符号である必要があります。正負の異なる符号が混じる場合、エラー(#NUM!)が発生します。
    • たとえば、10単位で切り下げたい場合は「10」、0.5単位で切り下げたい場合は「0.5」と指定します。

FLOOR関数の使用例(基本的なパターン)

FLOOR関数の具体例を見てみましょう。

例1:500円単位で切り下げ

セル数値関数結果説明
A11234=FLOOR(A1, 500)10001234を500の倍数で切り下げると、1000になります。
A2899=FLOOR(A2, 500)500899を500の倍数で切り下げると、500になります。
A3500=FLOOR(A3, 500)500500はすでに500の倍数なので、そのまま500になります。

例2:0.1単位で切り下げ

セル数値関数結果説明
A112.34=FLOOR(A1, 0.1)12.312.34を0.1の倍数で切り下げると、12.3になります。
A25.678=FLOOR(A2, 0.1)5.65.678を0.1の倍数で切り下げると、5.6になります。

例3:負の数の場合

負の数と基準値の符号が同じである必要がある点に注意しましょう。

セル数値関数結果説明
A1-123=FLOOR(A1, -10)-130-123を-10の倍数で切り下げると、-130になります。(数直線上でより左側)
A2-56=FLOOR(A2, -5)-60-56を-5の倍数で切り下げると、-60になります。

FLOOR関数の利用シーン

FLOOR関数の具体的な利用シーンをいくつかご紹介します。

請求金額や価格の調整

請求金額や販売価格を特定の単位で調整したい場合にFLOOR関数は便利です。

例:100円未満を切り捨てて請求する
  • A列に合計金額が入力されているとします。
  • =FLOOR(A2, 100)
  • これにより、12345円が12300円、9876円が9800円といった形で、100円未満が切り捨てられます。常に100円単位での請求となり、端数処理のルールとして有効です。
例:商品の単価を50円単位で設定する
  • 計算上算出された原価から、販売価格を50円単位で設定したい場合。
  • =FLOOR(原価 * 利益率, 50)
  • これにより、たとえば375円という計算結果が出た場合でも、販売価格は350円と設定され、価格体系の統一に役立ちます。

在庫管理におけるロット単位の調整

在庫管理では、製品がロット単位やケース単位で動くことがよくあります。FLOOR関数を使って、在庫数を実際の単位に合わせられます。

例:製品を12個単位で梱包する場合の出荷可能数
  • 現在の在庫数がA列に入力されているとします。
  • =FLOOR(A2, 12)
  • 在庫が100個あった場合、出荷可能な梱包数は8ケース(96個)となり、端数(4個)は出荷できないものとして扱われます。これにより、ピッキングや出荷準備の効率化につながります。

時間の丸め処理(スケジュール管理、勤務時間計算)

時間データを特定の単位で丸めたい場合にもFLOOR関数は有効です。Excelでは時刻も数値(シリアル値)として扱われるため、FLOOR関数を適用できます。

例:勤務時間を15分単位で切り下げる
  • B列に勤務時間(例:8:47)が入力されているとします。
  • =FLOOR(B2, “0:15”)
  • これにより、8時間47分は8時間45分に、7時間13分は7時間00分に切り下げられます。給与計算などで、就業規則に基づいた時間の丸め処理が必要な場合に役立ちます。
  • ポイント:時間を基準値にする場合は、”0:15″のように文字列として入力するか、15/1440のように分を1日の総分で割る(1日=24時間=1440分)形で数値を指定します。

予算管理や実績分析

予算管理や実績分析において、特定の金額単位でデータを集計したり、見込みを立てたりする際にFLOOR関数が利用できます。

例:部門費の予算を千円単位で設定する
  • 各部門からの要望に基づき、予算を千円単位で設定する場合。
  • =FLOOR(部門からの要望額, 1000)
  • これにより、たとえば3,456,789円の要望があったとしても、予算は3,456,000円として計上され、予算体系の統一性を保てます。
例:売上実績を万円単位でグラフ化する際の調整
  • グラフの目盛りを万円単位で表示したいが、データが円単位である場合。
  • =FLOOR(売上高, 10000)
  • 売上高987,654円であれば980,000円に、4,567円であれば0円になります。これにより、グラフの表示がすっきりし、大まかな傾向を掴みやすくなります。

FLOOR関数の応用:他の関数との組み合わせ

FLOOR関数は単体でも強力ですが、他のExcel関数と組み合わせることで、より複雑な計算やデータ処理が可能になります。ここでは、いくつかの応用例をご紹介します。

FLOOR関数とCEILING関数の丸め処理の使い分け

FLOOR関数は「切り下げ」ですが、反対に「切り上げ」を行いたい場合はCEILING関数が役立ちます。CEILING関数は、指定した数値を、指定した基準値の最も近い倍数に切り上げる関数です。

=CEILING(数値, 基準値)

この二つの関数を使い分けることで、さまざまな丸め処理に対応できます。

関数動作例:=FLOOR(3.7, 0.5)結果例:=CEILING(3.2, 0.5)結果
FLOOR切り下げ=FLOOR(3.7, 0.5)3.5=FLOOR(3.2, 0.5)3.0
CEILING切り上げ=CEILING(3.7, 0.5)4.0=CEILING(3.2, 0.5)3.5

応用例:最低販売価格と最高販売価格の計算

たとえば、製品のコストが変動する場合でも、販売価格を特定の範囲に収めたいとします。

  • 最低販売価格(切り下げ):=FLOOR(原価 * 1.2, 100) (原価の1.2倍を100円単位で切り下げ)目的:一定の利益率(この場合は原価の 20% 超)を確保する最低販売価格を設定すると同時に、価格を切り捨てて 100 円単位に標準化します。
  • 最高販売価格(切り上げ):=CEILING(原価 * 1.5, 100) (原価の1.5倍を100円単位で切り上げ)目的:販売価格は原価の1.5倍以上とし、100円単位に切り上げます。これにより、価格を一定に保ち、管理しやすい価格設定を維持しながら、健全な利益率を確保します。

このように、価格設定の上限と下限をFLOOR/CEILING関数で調整することで、価格戦略の柔軟性を高められます。

FLOOR関数とROUND関数の違い

FLOOR関数は「切り下げ」、ROUND関数は「四捨五入」です。これらを適切に使い分けることが重要です。

  • ROUND関数:指定した桁数で四捨五入します。
    • =ROUND(数値, 桁数)
    • =ROUND(3.75, 1) → 3.8
    • =ROUND(3.25, 1) → 3.3
  • FLOOR関数を使うべき場面
    • 請求金額の端数処理(切り捨てルールがある場合)
    • 在庫管理でのロット単位の調整
    • 勤務時間の切り下げ(例:15分未満は切り捨て)
  • ROUND関数を使うべき場面
    • 単純な統計データや財務報告での丸め処理(一般的な四捨五入)
    • 数値の表示を簡潔にしたい場合

FLOOR関数とIF関数の丸め処理の違い

IF関数と組み合わせることで、特定の条件が満たされた場合にのみFLOOR関数を適用する、といった柔軟な処理が可能になります。

応用例:一定金額以上の割引額を特定の単位で調整

たとえば、顧客の購入金額が10,000円を超えた場合のみ、割引額を500円単位で切り下げたいとします。

=IF(購入金額 >= 10000, FLOOR(割引額, 500), 割引額)

この式では、購入金額が10,000円以上の場合は割引額を500円単位で切り下げ、それ以外の場合は割引額をそのまま適用します。

FLOOR関数とWEEKDAY関数・TIME関数

前述の通り、Excelでは日付や時刻も数値として扱われます。FLOOR関数とWEEKDAYE関数、TIME関数を組み合わせることで、日付や時刻データを特定の単位で丸められます。

応用例:日付を週単位の開始日に合わせる

特定の日付をその週の月曜日に合わせたい場合(週の始まりを月曜日と仮定)です。

=FLOOR(A2-WEEKDAY(A2,3), 7)
  • A2:対象の日付
  • WEEKDAY(A2,3):A2が月曜日を0とする曜日番号を返します(月=0, 火=1, … 日=6)。
  • A2-WEEKDAY(A2,3):対象日付からその週の月曜日までの日数を引くことで、月曜日のシリアル値が計算されます。
  • FLOOR(…, 7):計算された月曜日のシリアル値を、7日(1週間)単位で切り下げます。これにより、常に週の開始日(月曜日)に調整されます。

応用例:時間を特定の分数単位で切り捨てる

特定の時間を15分単位で切り捨てたい場合は先述した通りですが、TIME関数を組み合わせることもできます。

=FLOOR(A1, “0:15”) または =FLOOR(A1, TIME(0,15,0))
  • A1:対象の時間(例: 10:47:30)
  • 結果:10:45:00

これにより、週次レポートの集計開始日を自動的に調整するなどの用途で役立ちます。

FLOOR関数を使う上での注意点とトラブルシューティング

FLOOR関数は使い方を誤ると予期せぬ結果やエラーを招くことがあります。ここでは、FLOOR関数を使用する上での注意点と、よくあるトラブルシューティングについて解説します。

数値と基準値の符号に注意

「数値」と「基準値」の符号に注意します。

  • 異なる符号の場合:#NUM! エラーが発生します。
    • =FLOOR(100, -10) → #NUM!
    • =FLOOR(-100, 10) → #NUM!
  • 対策:数値が負の場合、基準値も負の数にする必要があります。
    • =FLOOR(-100, -10) → -100

小数点以下の計算誤差

Excelでは、浮動小数点数の計算において、ごくわずかな誤差が生じることがあります。これはFLOOR関数に限らず、多くの数値計算で発生しうる現象です。

  • :=FLOOR(0.1+0.2, 0.1) が 0.2 になるべきところ、0.1 になるなど。
  • 原因:0.1+0.2 の計算結果が厳密には 0.3 ではなく 0.29999999999999999 のようにごくわずかな誤差を含むことがあるため、FLOOR関数が切り下げてしまうことがあります。
  • 対策
    • ROUND関数で事前に丸める:=FLOOR(ROUND(数値, 桁数), 基準値) のように、FLOOR関数を適用する前にROUND関数で丸めておくことで、計算誤差を吸収できます。
    • 基準値を整数倍にする:可能であれば、小数点以下の基準値を避け、整数で計算できる形に変換する。

基準値がゼロの場合

基準値を 0 に指定した場合、#DIV/0! エラーが発生します。これは、0で割るという数学的に定義されていない操作であるためです。

  • 対策:基準値は必ずゼロ以外の値を指定してください。もし、基準値が変動する可能性があり、かつゼロになる可能性がある場合は、IFERROR関数やIF関数を用いてエラーを処理することが推奨されます。たとえば、基準値が0の場合はエラーメッセージを表示し、それ以外の場合にFLOOR関数を適用する式は以下のようになります。
    • IF(基準値のセル=0, “基準値エラー”, FLOOR(数値のセル, 基準値のセル))

入力値がテキスト形式の場合

セルに数値ではなくテキスト形式のデータが入力されている場合、FLOOR関数はエラーを返したり、正しく計算できなかったりする場合があります。

  • 対策
    • セルの書式設定を「数値」または「標準」に変更する。
    • VALUE関数 を使ってテキスト形式の数値を数値に変換してからFLOOR関数に渡す。
      • =FLOOR(VALUE(A1), 100)

基準値が負の数である場合の「切り下げ」の意味合い

負の数における「切り下げ」は、数直線上でより左側(より小さい値)に向かうことを意味します。正の数とは直感的に異なる場合がありますので、結果をよく確認することが重要です。

  • FLOOR( -5.6, -1 ) → -6 (-5.6より小さく、-1の倍数)
  • FLOOR( 5.6, 1 ) → 5 (5.6より小さく、1の倍数)

このように、正負で結果の方向性が異なることを理解しておきましょう。


※ 掲載している情報は記事更新時点のものです。

※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。

関連記事