• 作成日 : 2025年8月5日

TRUNC関数の使い方!数値の切り捨て、切り上げ切り捨て方法を解説

ExcelのTRUNC関数(読み方:トランク関数)は、指定した桁数で数値を切り捨てる関数です。

この記事では、TRUNC関数の基本的な使い方から、INT関数やROUNDDOWN関数との違い、具体的な利用シーンや注意点までを初心者にもわかりやすく解説します。TRUNC関数を使いこなして、より正確で効率的な数値処理を実現しましょう。

TRUNC関数の基本的な使い方

まずは、TRUNC関数がどのような関数なのか、基本的な構文と使い方を見ていきましょう。

TRUNC関数の構文

TRUNC関数は、指定した数値の小数点以下、または指定した桁数で数値を切り捨てるための関数です。「小数部分を単純に除去する」という動作に特化している点が特徴であり、構文は以下の通りです。

=TRUNC(数値, [桁数])
  • 数値 (必須):切り捨てたい数値、または数値が入力されているセルを指定します。
  • [桁数] (省略可能):どの桁で切り捨てるかを指定する数値です。
    • 省略または 0 を指定:小数点以下をすべて切り捨て、整数部分のみを返します。
    • 正の数を指定:小数点以下の指定した桁数までを残し、それ以降を切り捨てます。例えば 1 を指定すると、小数点第1位までを残します。
    • 負の数を指定:整数部分の指定した桁値で切り捨てます。たとえば -1 を指定すると、1の位を切り捨てて10の倍数にします。-2 なら10の位までを切り捨てて100の倍数にします。

TRUNC関数の利用シーン

TRUNC関数は、具体的にどのような場面で役立つのでしょうか?いくつかの代表的な利用シーンと、似ている関数との違いについて解説します。

数値の整数部分だけを取り出したいとき

計算結果やデータに含まれる小数点以下の数値が不要で、整数部分だけを正確に取り出したい場合にTRUNC関数は非常に便利です。

例えば、商品の平均単価を計算した結果が 157.8円 となった場合、表示上は整数だけで良い、あるいは後続の計算で整数部分のみを使いたい、といったケースがあります。このようなときに =TRUNC(157.8) とすれば、157 という整数値が得られます。

指定した桁数で数値を切り捨てたいとき

整数部分だけでなく、小数点以下の特定の桁まで、あるいは整数部分の特定の位までで数値を切り捨てたい場合にもTRUNC関数は有効です。

  • 例(小数点以下):金融計算などで、円未満の銭を切り捨てる場合(小数点以下をすべて切り捨てる)。 =TRUNC(金額)
  • 例(整数部分):大まかな数値を把握するために、100円単位や1000円単位で数値を丸めたい(切り捨てたい)場合。
    • 100円単位(10の位以下を切り捨て):=TRUNC(金額, -2)
    • 1000円単位(100の位以下を切り捨て):=TRUNC(金額, -3)

このように、目的に応じて柔軟に切り捨ての桁数を指定できるのがTRUNC関数の強みです。

INT関数との違いと比較

Excelには、TRUNC関数とよく似た挙動をするINT(イント)関数があります。INT関数も数値を最も近い整数に切り捨てる関数ですが、負の数の扱いに大きな違いがあります。

  • TRUNC関数:数値の小数部分を単純に切り捨てます。
    • =TRUNC(5.8) → 5
    • =TRUNC(-5.8) → -5 (0の方向へ切り捨て)
  • INT関数:その数値よりも小さく(数直線上で左にある)、最も近い整数を返します。
    • =INT(5.8) → 5
    • =INT(-5.8) → -6 (より小さい整数へ切り下げ

このように、正の数に対してはTRUNC関数とINT関数は同じ結果を返しますが、切り捨ての定義が異なるため、負の数に対しては異なる結果を返します。

使い分け
  • 単純に小数点以下を取り除きたい(0方向への切り捨て)場合は TRUNC関数 を使います。
  • 指定した数値よりも小さく、最も近い整数を求めたい場合は INT関数 を使います。特に負の数を含むデータを扱う場合は、どちらの挙動が目的に合っているかをよく確認して選択する必要があります。
関数5.8 の結果-5.8 の結果処理内容
TRUNC 関数5-5小数部分を単純に切り捨てる (0に近い方向)
INT 関数5-6その数値よりも小さく、最も近い整数を返す (負の無限大方向)

ROUNDDOWN関数との違いと比較

もう一つ、切り捨て処理を行う関数としてROUNDDOWN(ラウンドダウン)関数があります。ROUNDDOWN関数も指定した桁数で数値を切り捨てる関数です。

  • TRUNC関数:TRUNC(数値, [桁数])※桁数の指定は省略可
  • ROUNDDOWN関数:ROUNDDOWN(数値, 桁数) ※桁数の指定が必須

実は、TRUNC関数とROUNDDOWN関数は、ほとんどの場合において同じ結果を返します

  • =TRUNC(123.456, 1) → 123.4
  • =ROUNDDOWN(123.456, 1) → 123.4
  • =TRUNC(123.456, -1) → 120
  • =ROUNDDOWN(123.456, -1) → 120
  • =TRUNC(-123.456, 1) → -123.4
  • =ROUNDDOWN(-123.456, 1) → -123.4

挙動としてはほぼ同じですが、関数の「意味合い」として使い分けることがあります。

  • TRUNC関数:数値の一部を「切り取る」「除去する」というニュアンスが強い場合に使うことがあります。例えば、日付データの時間部分を切り捨てて日付のみにする場合などです。
  • ROUNDDOWN関数:ROUND(四捨五入)関数やROUNDUP(切り上げ)関数と対になる関数として、「指定した桁数で数値を下に丸める(切り捨てる)」という意図を明確にしたい場合に使うことがあります。

実用上は、どちらを使っても同じ結果が得られることが多いですが、このような微妙なニュアンスの違いを理解しておくと、より適切な関数選択ができるでしょう。初心者の方は、まず「切り捨てたい」と思ったらTRUNC関数を使う、と覚えておけば問題ありません。

TRUNC関数の応用テクニック

TRUNC関数は単体で使うだけでなく、他の関数と組み合わせたり、特定のデータ形式に適用したりすることで、さらに活用の幅が広がります。

SUM関数との組み合わせ

複数の数値を合計した後、その結果の小数点以下を切り捨てたい場合に使えます。

=TRUNC(SUM(A1:A10))

これにより、A1からA10までの合計値の整数部分だけが得られます。

AVERAGE関数との組み合わせ

平均値を計算した後、小数点以下を切り捨てたい場合に使えます。

=TRUNC(AVERAGE(B1:B5))

これにより、セル B1 から B5 までの値の平均値から小数点以下の数値を除いた整数部分だけが得られます。

IF関数との組み合わせ

特定の条件を満たす場合にのみ、数値を切り捨てたい場合に使えます。

=IF(C1>1000, TRUNC(C1, -2), C1)

この例では、C1セルの値が1000より大きい場合は10の位以下を切り捨てた上で最も近い100の倍数にし、そうでない場合は元の値をそのまま表示します。

日付や時刻データの整数部分を取り出す

Excelでは、日付や時刻は「シリアル値」という数値で管理されています。日付は整数部分、時刻は小数部分で表されます。

  • 日付データのシリアル値から日付部分のみを取り出す:
    セルA1に日付と時刻(例:2025/4/25 12:30)が入力されている場合、そのシリアル値は 45771.52083… のようになります。この整数部分 45771 が日付を表します。52083…時刻の小数部分です。

=TRUNC(A1)

この数式を入力し、セルの表示形式を「日付」に設定すると、2025/4/25 のように時刻部分が切り捨てられた日付が表示されます。(INT関数でも同様の結果が得られます)

注意点:時刻データ(例:15:30:00、シリアル値は約 0.64583)に対して =TRUNC() を適用すると、結果は 0 になります。これは、時刻データはシリアル値の小数部分で表されるため、TRUNC関数で切り捨てると整数部分の 0 が返されるためです。時刻の「時」の部分だけを取り出したい場合は、HOUR関数などの時刻関数を使用します。

大量のデータにTRUNC関数を一括適用する方法

リスト形式のデータなど、複数のセルに対して同じTRUNC関数の処理を適用したい場合は、以下の方法が効率的です。

  • フィルハンドルの活用
    1. 最初のセルにTRUNC関数の数式を入力します。
    2. 数式を入力したセルの右下に表示される小さな四角形(フィルハンドル)をダブルクリックするか、下方向へドラッグします。
    3. 隣接する列のデータがある範囲まで、数式が自動的にコピー(オートフィル)されます。
  • テーブル機能の活用
    1. データをExcelの「テーブル」に変換します([挿入]タブ > [テーブル])。
    2. テーブル内の新しい列に、最初の行に対してTRUNC関数の数式を入力します。
    3. Enterキーを押すと、テーブル内のすべての行に同じ数式が自動的に適用されます。これは「計算列または集計列」と呼ばれる挙動であり、テーブルを通常のセル範囲よりもはるかに強力なデータ管理ツールにしています。

テーブル機能を使うと、データの追加や削除に合わせて数式も自動で調整されるため、管理が楽になります。

TRUNC関数を使う上での注意点

TRUNC関数を効果的に使うために、いくつか注意しておきたい点があります。

「切り捨て」であり「四捨五入」ではない

最も基本的な注意点ですが、TRUNC関数は常に切り捨てを行います。数値を丸める処理には、他に「四捨五入(ROUND関数)」や「切り上げ(ROUNDUP関数)」があります。目的に応じて適切な関数を選択してください。

  • 切り捨て:TRUNC(1.9) → 1
  • 四捨五入:ROUND(1.9, 0) → 2
  • 切り上げ:ROUNDUP(1.1, 0) → 2

負の数の扱い

前述の通り、負の数に対してTRUNC関数は「0に近い方向」へ切り捨てを行います。これはINT関数(より小さい整数へ切り捨てる)とは異なる挙動です。負の数を扱う際は、意図した通りの結果が得られているかを確認するようにしましょう。

  • TRUNC(-5.8) → -5
  • INT(-5.8) → -6

[桁数]引数の省略時の挙動

TRUNC関数の [桁数] 引数は省略可能です。省略した場合、0 を指定したのと同じ意味になり、小数点以下がすべて切り捨てられて整数が返されます。このデフォルトの挙動を覚えておくと、数式をシンプルに記述できるでしょう。

下記の2つの数式は同じ結果(123)を返します。

=TRUNC(123.456)

=TRUNC(123.456, 0)


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

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

関連記事