VALUE 関数:構文、使用例、エラーの解決法
2026-10-15 更新 · 無料 · Excel と Google Sheets に対応
構文
=VALUE(text)クイック回答
VALUE は数値に見える文字列を本物の数値に変えます:=VALUE("12345") は 12345 を返し、すぐ合計できます。ロケールが認める日付・時刻・パーセントも解析でき、文字列に空白や通貨記号、想定外の区切り文字が潜むと #VALUE! になります——まず TRIM で掃除を。
構文
=VALUE(text)| 引数 | 意味 |
|---|---|
| text | 数値らしい文字列を含む引用符付きリテラル、セル、式。必須——唯一の引数です。Excel はロケールの規則で解析します:小数点が「.」か「,」か、日付の順序、既定の通貨。 |
引数はひとつ、オプションなし:=VALUE(A2) はどの言語の Excel でも同じ書き方です。ロケールで違うのは「どの文字列を受け入れるか」——「1.5」は米国では 1.5、ドイツではエラーで、ドイツ語版は =WERT("1,5") が 1.5 になります。
VALUE は文字列の世界と数値の世界を架橋する関数です。インポート、エクスポート、コピー&ペーストは数字に文字列の衣装を着せがちです——左寄せ、SUM で無視、文字順ソート——VALUE はその衣装を脱がせる汎用ツールです。TRIM が先に掃除し、LEN と ISNUMBER が検証し、VALUE が変換します。
基本的な使用例
=VALUE(A2)基本の変換:「12345」は 12345 に、「2026/10/15」はシリアル値 45945 に、「50%」は 0.5 になります。結果は本物の数値——右寄せ、合計可、並べ替え可——元がどんなに文字列っぽくても。
=VALUE(TRIM(A2))掃除との合わせ技:インポートデータは末尾に空白を仕込みがちで、VALUE は「 12345 」で #VALUE! を出します。先に TRIM で剥がしてから変換すれば着地します。インポート失敗の大半はこの一手で直ります。
=VALUE(TRIM(SUBSTITUTE(A2, CHAR(160), " ")))見えない文字の駆除:Web コピーの CHAR(160)(改行なし空白)は TRIM にも見えません。だから普通の空白に置換→トリム→変換の順で。Web から貼ったデータの完全パイプラインです。
=IFERROR(VALUE(A2), "")安全網:変換できるセルと永遠にできないセルが混在する列向け。VALUE が変換できる行を処理し、IFERROR が絶望的な行を空セルにします。SUM やグラフは動き続け、後からゆっくり調査できます。
=IF(ISNUMBER(A2), A2, VALUE(A2))混合列の正規化:すでに数値のセルは素通り、文字列型の数字だけ変換——数式ひとつで列全体が SUM・VLOOKUP・ピボットの準備を整えます。
ロケールが認めない文字列は VALUE も拒みます:「$50」はドイツ環境でエラー、「1,234.56」はカンマが桁区切りでない環境でエラー、「12:30 PM」は 24 時間制の環境でエラー。SUBSTITUTE で余計なものを剥がすか、ロケールに合わせてから変換してください。
よくあるエラーと直し方
| 症状 | 最も多い原因 | 解決策 |
|---|---|---|
| きれいに見える数字で #VALUE! | 見えない文字——Web コピーの CHAR(160) は TRIM でも消えず、VALUE は数値以外を拒みます。 | 先に置換:=VALUE(TRIM(SUBSTITUTE(A2, CHAR(160), " ")))。 |
| 「$50」で #VALUE! | 通貨記号は文字列——VALUE が解析するのはロケールの既定表記だけです。 | 記号を剥がす:=VALUE(SUBSTITUTE(A2, "$", ""))、その後通貨書式を設定。 |
| 「1,234.56」で #VALUE! | 桁区切りがロケール規則の外、または小数点環境に小数カンマが混入。 | SUBSTITUTE で区切りを消すか、分解して組み直してから変換。 |
| 日付が 45945 などの奇妙な数値になる | エラーではありません——VALUE が日付を解析してシリアル値を返したのです。Excel は内部で日付をこう保存します。 | 結果セルを日付書式にするか、本当に数値の列だけ変換します。 |
| 変換後も文字列として並べ替えられる | 数式は正常——下流で TEXT に包まれたか、文字列として貼り直されたかです。 | =ISTEXT で確認:TRUE なら TEXT を外すか、値として貼り直します。 |
知っておくと便利な細部:VALUE は本物の数値も受け付けます——=VALUE(12345) は 12345 をそのまま返す——つまり混合列を包んでも数値セルは壊れず、文字列セルだけ救われます。
VALUE と TEXT の比較
| VALUE | TEXT | |
|---|---|---|
| 方向 | 文字列 → 数値——「12345」を 12345 に解析 | 数値 → 文字列——12345 を「12345.00」に整形 |
| 目的 | 文字列に閉じ込められた数字を救い出し、SUM・検索・グラフを動かす | ラベルやレポート内で数値を固定書式で表示 |
| ロケール依存 | ロケール規則で解析——「1.5」と「1,5」 | 書式コードもローカライズ——yyyy/mm/dd と JJJJ/MM/TT |
| 互逆 | =TEXT(12345, "0") は「12345」を返す | =VALUE(TEXT(12345, "0")) は 12345 を返す |
同じパイプの両端です:TEXT は数値を表示用の文字列にレンダリングし、VALUE は表示文字列を数値へ解析し直します。数値プレースホルダーだけの書式コードなら往復は安全——でも TEXT("0.00") が書き出す小数点を、カンマ環境の VALUE は解析を拒みます。
VALUE とフラッシュフィルの比較
| VALUE 数式 | フラッシュフィル (Ctrl+E) | |
|---|---|---|
| 出力 | 元が変われば再計算する生きた数式 | 静的な値を一度書き込むだけ;新しい行はやり直し |
| 信頼性 | 決定論的——同じ入力なら常に同じ数値 | パターンを推測——結果はサンプリングで確認 |
| 向いている | 変換が追跡可能であるべき監査用インポート | いずれ目視確認する予定の一回限りの掃除 |
| 対応 | 全バージョンの Excel と Google Sheets | Excel 2013 以降;Sheets は Smart Fill で応答 |
両者は協力します:フラッシュフィルが汚れたセルから数字を抽出し、VALUE の列が各抽出がきれいに変換できることを証明してから信じる。フィルは推測、VALUE は検証。
Google Sheets での VALUE
- 同じ名前・同じ単一引数——上の数式はすべて Sheets にそのまま貼り付きます。
- Sheets も同じ理由で #VALUE! を出します:見えない空白と未知の区切り文字。
- TRIM も同じ動作なので、TRIM→変換の合わせ技もそのまま移せます。
- 日付はここでもシリアル値を返します——結果セルを日付書式にすれば表示されます。
制限と実践的なコツ
- ロケール規則が契約です:「1.5」と「1,5」はファイルを開く場所次第で別の数値——両方が解析されると思わないこと。
- 一度にひとつの値:VALUE は範囲を受け付けません——列全体は数式を下へフィル、一回限りのインポートは区切り位置で。
- 論理値は失敗します:=VALUE(TRUE) は #VALUE!——TRUE と FALSE はブール値であり、エクスポート元の主張に関係なく数値ではありません。
- 解析できるのはロケール既定の通貨だけ:米国の「$50」、他の記号は別——SUBSTITUTE で剥がしてから書式設定。
- あいまいな文字列は危険です:「3/4」はロケール次第で 3 月 4 日にも 4 月 3 日にも——変換前に明示的な列へ分割。
VALUE は掃除パイプラインの最後の一歩として使い、最初の一歩にはしないこと:改行と改行なし空白を取り、詰め物をトリムし、LEN で長さを監査——その後に変換。さもないと失敗した変換がすべて #VALUE! になって逆流調査を迫られます。
関連ツール
関連関数
よくある質問
VALUE 関数は Excel で何をしますか?
数値に見える文字列を本物の数値に変えます:=VALUE("12345") は 12345 を返し、SUM・検索・グラフにすぐ使えます。ロケールが認める日付・時刻・パーセントも解析します。
VALUE が #VALUE! を返すのはなぜ?
その文字列がロケールの認める数値ではないからです——隠れた空白、通貨記号、誤った区切り文字、あるいはただの単語。先に TRIM と SUBSTITUTE で掃除するか、IFERROR で包んでシートの計算を守ります。
VALUE と =A2*1、=--A2 の違いは?
きれいな数字文字列なら 3 つとも同じ結果——同じロケール規則で解析します。VALUE は意図を明示するので共有ブックや監査で読みやすく、算術テクニックはその場の修正で簡潔さが勝ります。
VALUE は日付や時刻を変換できますか?
はい——=VALUE("2026/10/15") はシリアル値 45945 を、=VALUE("13:30") は 0.5625 を返します。結果セルを日付または時刻書式にすれば表示されます。
=VALUE("1,5") は失敗し =VALUE("1.5") は成功するのはなぜ?
ロケールの違いです:小数点環境(米英)ではドットが小数点、カンマ環境(独・西・伯)ではその逆。VALUE にはその Excel が話す書式を与えるか、手動で分解して組み直します。
VALUE はパーセントを処理できますか?
はい——=VALUE("50%") は 0.5 を返し、多くのバージョンではパーセント書式が付きます。素の 50 が必要なら 100 を掛けます。
VALUE は Google Sheets でも使えますか?
はい——同じ名前、同じ単一引数、未知の文字列では同じく #VALUE!。TRIM→変換の合わせ技はそのまま使え、日付もシリアル値で返ります。
自分のファイルで試す準備はできましたか?
Excelの文字列の数字を数値に変換を開く — 無料