見積書やレポートで、数値をカンマ区切りの文字列に変換したい。でも「¥」や「$」の通貨記号は不要なこともありますよね。
ExcelのFIXED関数なら、数値を四捨五入して文字列に変換できます。桁区切りカンマの有無も引数ひとつで切り替えられるのがポイントです。
この記事では、FIXED関数の構文と基本的な使い方から、TEXT関数やDOLLAR関数との違い、実務での活用パターンまでまとめて解説します。
ExcelのFIXED関数とは
FIXED関数(読み方: フィクスド関数)は、数値を四捨五入して桁区切り付きの文字列に変換する関数です。
英語の「Fixed-point(固定小数点)」に由来します。指定した桁数で数値を丸め、カンマ区切りの文字列を返します。
DOLLAR関数と似ていますが、通貨記号は付きません。金額以外の数値を見やすく整形したいときに便利です。
対応バージョンはExcel 2016 / 2019 / 2021 / 2024 / Microsoft 365です。Googleスプレッドシートでもほぼ同じ構文で使えます。
FIXED関数の構文と引数
=FIXED(数値, [桁数], [桁区切りなし])
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 数値 | 必須 | 四捨五入して文字列に変換したい数値 |
| 桁数 | 任意 | 小数点以下の桁数(省略時は2)。最大127まで指定可能 |
| 桁区切りなし | 任意 | TRUE = カンマなし / FALSE = カンマあり(省略時はFALSE) |
引数は最大3つです。「どの数値を」「小数何桁で」「カンマを付けるか」の3点を指定します。
一番シンプルな使い方は、数値だけを指定する方法です。
=FIXED(1234.567)
結果は「1,234.57」です。小数2桁で四捨五入され、桁区切りカンマが付きます。
戻り値が「文字列」になる理由
FIXED関数の戻り値は文字列(テキスト)です。見た目は数値でも、セルの中身は文字列になります。
FIXED関数の目的は「表示用の整形」です。桁区切りカンマやゼロ埋めを含んだ書式は、数値型では保持できないため、文字列として返す設計になっています。
そのため、FIXED関数の結果はSUMや四則演算に使えません。計算用のセルとは分けて使う必要があります。この点は後ほど詳しく説明します。
FIXED関数の基本的な使い方
小数点以下の桁数を指定する(第2引数)
第2引数で小数点以下の桁数をコントロールできます。
| 数式 | 結果 | 説明 |
|---|---|---|
| =FIXED(1234.567) | 1,234.57 | 省略時は2桁 |
| =FIXED(1234.567, 0) | 1,235 | 小数なし(整数に丸め) |
| =FIXED(1234.567, 1) | 1,234.6 | 小数1桁 |
| =FIXED(1234.567, 3) | 1,234.567 | 小数3桁 |
桁数を「0」にすると小数部分が消えます。整数だけ表示したいときに便利です。
指定した桁数に満たない場合はゼロで埋められます。
=FIXED(100, 2)
結果は「100.00」です。端数がなくても2桁分のゼロが付きます。帳票の桁数を統一したいときに使ってみてください。
桁区切りカンマのON・OFFを切り替える(第3引数)
第3引数で桁区切りカンマの有無を切り替えられます。
| 数式 | 結果 | カンマ |
|---|---|---|
| =FIXED(1234.567, 1) | 1,234.6 | あり(デフォルト) |
| =FIXED(1234.567, 1, FALSE) | 1,234.6 | あり |
| =FIXED(1234.567, 1, TRUE) | 1234.6 | なし |
第3引数をTRUEにするとカンマなしの文字列になります。省略またはFALSEならカンマ付きです。
=FIXED(1234.567, 1, TRUE)
結果は「1234.6」です。CSVやシステム連携用にカンマなしの文字列が必要な場面で重宝します。
負の桁数で千円単位・万円単位に丸める
あまり知られていませんが、第2引数には負の値も指定できます。負の値を指定すると、小数点の左側(整数部分)が丸められます。
| 数式 | 結果 | 丸めの単位 |
|---|---|---|
| =FIXED(1234.567, -1) | 1,230 | 十の位で丸め |
| =FIXED(1234.567, -2) | 1,200 | 百の位で丸め |
| =FIXED(98765, -3) | 99,000 | 千の位で丸め |
「-1」なら十の位、「-2」なら百の位で四捨五入されます。
=FIXED(1234.567, -1)
結果は「1,230」です。下1桁が四捨五入されました。
予算書やレポートで千円単位・万円単位の概算値を出したいときに便利です。わざわざ割り算してから丸める必要がありません。ぜひ試してみてください。
FIXED関数と似た関数の違い一覧
数値を文字列に変換する関数は他にもあります。TEXT関数・DOLLAR関数・ROUND関数との違いを整理しましょう。
TEXT関数との違い
| 項目 | FIXED関数 | TEXT関数 |
|---|---|---|
| 構文 | FIXED(数値, 桁数, カンマ省略) | TEXT(数値, 書式コード) |
| 書式の指定方法 | 桁数とカンマ有無だけ | 書式コードで自由に指定 |
| 書式の自由度 | 低い | 高い |
| 戻り値 | 文字列 | 文字列 |
TEXT関数は書式コードで細かい制御ができます。日付変換やパーセント表示にも対応する万能型です。
ただし書式コードを覚える必要があります。桁区切りだけならFIXED関数のほうがシンプルに書けます。
=FIXED(1234567, 0)
=TEXT(1234567, "#,##0")
どちらも結果は「1,234,567」です。同じ出力になりますが、FIXED関数のほうが直感的ですよね。
DOLLAR関数との違い
| 項目 | FIXED関数 | DOLLAR関数 |
|---|---|---|
| 通貨記号 | 付かない | 自動で付く(ロケール依存) |
| カンマ制御 | 第3引数で可能 | 不可(常にカンマ付き) |
| 戻り値 | 文字列 | 文字列 |
DOLLAR関数は「¥」や「$」を自動で付けます。通貨表示に特化した関数です。
FIXED関数は通貨記号なしで桁区切りだけ付けたいときに適しています。個数・人数・距離など、金額以外の数値を整形するならFIXED関数を選びましょう。
カンマの制御ができるのもFIXED関数だけです。DOLLAR関数では桁区切りを外せません。この違いは覚えておくと役立ちます。
ROUND関数との違い(数値 vs 文字列)
| 項目 | FIXED関数 | ROUND関数 |
|---|---|---|
| 戻り値の型 | 文字列 | 数値 |
| 桁区切りカンマ | あり(デフォルト) | なし |
| SUM・四則演算 | 不可 | 可能 |
| 用途 | 表示用の整形 | 計算用の丸め |
最大の違いは戻り値の型です。ROUND関数は数値を返し、FIXED関数は文字列を返します。
計算に使うならROUND関数を選びましょう。表示用の整形にはFIXED関数が適しています。
「数値のまま四捨五入 → ROUND」「文字列に変換して表示 → FIXED」と覚えておけば迷いません。目的に合わせて使い分けてみてください。
実践サンプル|文字列に数値を埋め込む
帳票・見積書・レポートへの活用例
FIXED関数が最も活躍するのは、数値を文章に埋め込む場面です。
見積書の合計金額をセルB1に入力しているとします。
="合計: " & FIXED(B1, 0) & " 円(税抜)"
B1が「1500000」なら、結果は「合計: 1,500,000 円(税抜)」になります。
FIXED関数を使わずに直接結合するとどうなるでしょうか。
="合計: " & B1 & " 円(税抜)"
結果は「合計: 1500000 円(税抜)」です。桁区切りがなく読みづらいですよね。
レポートの数量表示でも同じテクニックが使えます。
="出荷数: " & FIXED(C3, 0) & " 個"
通貨記号が不要な場面ではFIXED関数の出番です。個数・人数・重量など幅広く使えます。
CONCAT・&演算子との組み合わせ
文字列の結合には「&演算子」と「CONCAT関数」の2つの方法があります。
&演算子を使う書き方はこちらです。
="在庫は" & FIXED(A1, 0) & "個です"
CONCAT関数(複数の文字列を結合する関数)を使う書き方はこちらです。
=CONCAT("在庫は", FIXED(A1, 0), "個です")
どちらも同じ結果になります。結合する文字列が少なければ&演算子で十分です。
複数セルをまとめて結合するならCONCAT関数が見やすくなります。場面に応じて使い分けてみてください。
よくあるトラブルと対処法
SUM・四則演算で計算できない
FIXED関数でもっとも多いトラブルがこれです。
=FIXED(100, 0) → "100"(文字列)
=FIXED(200, 0) → "200"(文字列)
この2つのセルをSUMで合計すると「0」になります。SUM関数は文字列を無視するからです。
四則演算では#VALUE!エラーが発生します。文字列同士の足し算はExcelで処理できません。
対処法: 計算用セルと表示用セルを分けましょう。元データは数値のまま残し、表示が必要な場所だけにFIXED関数を使います。
どうしても文字列を数値に戻したいときは、VALUE関数(文字列を数値に変換する関数)を使います。
=VALUE(FIXED(1500, 0))
結果は数値の「1500」です。ただし往復変換は非効率です。最初から計算と表示を分けるほうがスマートです。
#VALUE!エラーの原因と解決法
FIXED関数で#VALUE!エラーが出る原因は、第1引数に数値以外を指定した場合です。
=FIXED("abc", 0)
この数式は#VALUE!エラーになります。セル参照を使うときは、参照先が数値かどうかを確認しましょう。
数値かどうか不安なときは、ISNUMBER関数(セルの値が数値かを判定する関数)で事前チェックできます。
=IF(ISNUMBER(A1), FIXED(A1, 0), "数値を入力してください")
数値ならFIXED関数を適用し、それ以外ならメッセージを表示します。入力ミスの多い帳票で使うと安心です。
まとめ
ExcelのFIXED関数は、数値を四捨五入して文字列に変換する関数です。
ポイントを整理します。
- 構文は
=FIXED(数値, 桁数, 桁区切りなし)の最大3引数 - 桁数を省略するとデフォルト2。負の値で千円・万円単位に丸められる
- 桁区切りカンマはデフォルトで付く。第3引数にTRUEを指定するとカンマなしになる
- 通貨記号は付かない。金額以外の数値整形に最適
- 戻り値は文字列。計算には使えないので表示用と計算用のセルを分ける
- 通貨表示が必要ならDOLLAR関数、書式を自由に指定したいならTEXT関数を選ぶ
まずは =FIXED(A1, 0) で数値に桁区切りを付けるところから試してみてください。
関連記事: 機能別Excel関数一覧 / アルファベット順Excel関数一覧
