VALUE・DATEVALUE・TIMEVALUE関数でExcelのテキストを数値・日付・時刻に変換する|型変換エラーの解消と実務活用パターンとMOS試験対策

「CSVを取り込んだのにSUM関数が0になる」「日付列で並べ替えをかけると順番がバラバラになる」「勤怠データの時刻を足し算できない」――こうしたトラブルに直面したことはないでしょうか。原因の多くはExcelが数値・日付・時刻のデータをテキスト(文字列)として認識していることにあります。

この型不一致を確実に解消する専用関数がVALUE関数・DATEVALUE関数・TIMEVALUE関数の3つです。テキスト形式のデータを計算可能な数値・日付シリアル値・時刻シリアル値に変換し、SUM・DATEDIF・NETWORKDAYS・IF関数と組み合わせた業務処理に使えるようにします。

本記事では3つの関数の基本構文・引数の意味・実務シナリオ別の活用パターン・#VALUE!エラーの原因と対処法・代替手段との比較・MOS Excel試験での出題ポイントを体系的に解説します。


VALUE・DATEVALUE・TIMEVALUE関数でExcelのテキストを数値・日付・時刻に変換する|型変換エラーの解消と実務活用パターンとMOS試験対策 - 解説
目次

テキスト型数値が引き起こす問題とその見分け方

Excelで数値や日付がテキストとして保存されている状態には、次のような特徴があります。

症状テキスト型の場合正常な数値型の場合
SUM/AVERAGEの結果0になる(文字列は加算されない)正しく合計される
セル内の配置左詰めで表示される右詰めで表示される
並べ替えの順序文字コード順(”10″→”2″→”20″)になる数値順(2→10→20)になる
セル左上の緑三角「数値が文字列として保存されています」と表示される三角は表示されない
ISNUMBER関数の結果=ISNUMBER(A1) → FALSE=ISNUMBER(A1) → TRUE

診断の最速手順:対象セルに=ISNUMBER(A1)と入力します。TRUEならば数値型・FALSEならばテキスト型です。日付の場合は=YEAR(A1)の結果も合わせて確認すると確実です。

VALUE関数の基本構文と動作

VALUE関数は、数値を表す文字列を数値型(計算に使えるデータ型)に変換します。

=VALUE(文字列)
引数説明省略
文字列数値に変換したいテキスト、またはテキストが入ったセル参照必須

引数は1つだけです。変換できる文字列の形式は次の通りです。

  • 整数文字列"123" → 123
  • 小数文字列"3.14" → 3.14
  • カンマ区切り数値"1,234,567" → 1234567(カンマは自動除去される)
  • パーセント表記"85%" → 0.85(100分の1に変換される)
  • 通貨記号付き"¥1,000" → 1000(通貨記号・カンマを除去)
  • Excelが認識する日付文字列"2026/1/15" → 日付シリアル値(整数)

変換できない文字列(例:"abc""12月分")を渡すと#VALUE!エラーが返ります。空文字列("")を渡した場合は0が返ります。

DATEVALUE関数の基本構文と動作

DATEVALUE関数は、日付を表す文字列を日付シリアル値(1900年1月1日を1とした整数)に変換します。

=DATEVALUE(日付文字列)
引数説明省略
日付文字列日付を表すテキスト、またはテキストが入ったセル参照必須

Excelが認識する主な日付文字列と変換結果を示します。

入力文字列DATEVALUEの戻り値日付書式を設定した場合の表示
“2026/1/15”シリアル値(整数)2026/1/15
“2026-01-15”シリアル値(整数)2026/1/15
“2026年1月15日”シリアル値(整数)2026/1/15
“1月15日”当年の1月15日のシリアル値(当年)1月15日

重要な注意点:DATEVALUEが返す値は整数のシリアル値です。そのままでは大きな整数として表示されるため、セルの表示形式を「日付」に変更することを忘れないようにしましょう。表示形式の変更は Ctrl+1(セルの書式設定)→「日付」から行います。

TIMEVALUE関数の基本構文と動作

TIMEVALUE関数は、時刻を表す文字列を時刻シリアル値(0以上1未満の小数)に変換します。

=TIMEVALUE(時刻文字列)
引数説明省略
時刻文字列時刻を表すテキスト、またはテキストが入ったセル参照必須
入力文字列TIMEVALUEの戻り値時刻書式を設定した場合
“12:00”0.5(1日の半分)12:00
“14:30”0.604166…14:30
“9:00 AM”0.3759:00
“06:30:00”0.270833…6:30

TIMEVALUEが返すシリアル値は0以上1未満の小数で、0.0が0時・0.5が12時・1.0(未満)が24時に相当します。表示形式を「時刻」に設定することで見慣れた時刻表示になります。勤怠管理や製造ラインのログデータを扱う際によく使われます。

実務シナリオ1:CSVインポートデータの数値変換

基幹システムやECサイトからエクスポートしたCSVファイルでは、売上金額・数量・単価が文字列として保存されているケースが頻繁にあります。そのままSUM関数を適用しても0になるため、VALUE関数でまとめて変換します。

状況:A列に「1,200」「890」「45,000」のように文字列形式の売上金額がA2:A101に入っている。B列に数値型に変換した値を出力したい。

=VALUE(A2)   ' カンマが除去されて数値1200が返る

B2に入力してB101まで数式をコピーします。B列の合計はSUM関数で正しく集計されます。カンマ付きの文字列(”1,200″)もVALUE関数がカンマを自動除去して数値化するため、事前にSUBSTITUTEでカンマを除去する手間が不要です。

一括変換の別解:データ列を選択し「データ」タブ→「区切り位置」→ウィザードを「完了」まで進めると、テキスト型の数値が一括で数値型に変換されます。VALUE関数との違いは関数式が残らないため後から元データを参照できない点です。用途に応じて使い分けます。

実務シナリオ2:テキスト形式の日付を日付型に変換する

システム出力ファイルに「2026/1/15」(スラッシュ区切り文字列)・「2026-01-15」(ハイフン区切り文字列)・「2026年1月15日」(日本語形式)など様々な形式の日付文字列が混在することがあります。

スラッシュ区切り・日本語形式をDATEVALUEで変換

=DATEVALUE(A2)   ' "2026/1/15" → 日付シリアル値

結果のセルを選択し「ホーム」タブ→「数値の書式」→「短い日付形式」を選ぶと「2026/1/15」と表示されます。変換後はDATEDIF・NETWORKDAYS・EDATEなどの日付関数で計算が可能になります。

ピリオド区切りをSUBSTITUTEで前処理してから変換

「2026.01.15」のようにピリオド区切りの日付文字列はDATEVALUEが直接認識しないため、SUBSTITUTE関数でピリオドをスラッシュに置換してから渡します。

=DATEVALUE(SUBSTITUTE(A2,".","/"))
' "2026.01.15" → 一度 "2026/01/15" に変換してから日付シリアル値を取得

8桁数字文字列(yyyymmdd)をDATE関数で変換

「20260115」のような8桁文字列はDATEVALUEが直接認識しないため、LEFT・MID・RIGHT関数で年月日を切り出してDATE関数に渡す方法が一般的です。

=DATE(LEFT(A2,4), MID(A2,5,2), RIGHT(A2,2))
' "20260115" → 2026年1月15日のシリアル値

どちらの方法もシリアル値が返るため、セルの表示形式を日付に変更することを忘れずに行います。

実務シナリオ3:テキスト形式の時刻を時間計算に使う

勤怠管理システムからエクスポートした「出勤時刻」「退勤時刻」が「09:00」「18:30」といったテキスト形式で保存されている場合、そのままでは引き算できません。TIMEVALUEで変換することで実際の勤務時間計算が可能になります。

' A2:退勤時刻テキスト "18:30"、B2:出勤時刻テキスト "09:00"
=TIMEVALUE(A2) - TIMEVALUE(B2)
' 結果は 0.395833…(時刻型シリアル値)

結果セルの表示形式を「[h]:mm」にすると「9:30」(9時間30分)と表示されます。[h](角括弧)をつけることで24時間を超える合計時間にも対応できます。

分単位の数値として集計したい場合は次の計算式を使います。

=(TIMEVALUE(A2) - TIMEVALUE(B2)) * 24 * 60   ' 勤務時間を分単位で取得

TIMEVALUE変換後の値はHOUR・MINUTE・SECOND関数の引数にも渡せるため、「残業が30分以上の場合だけカウントする」「ラベルに”X時間Y分”と表示する」といった応用処理も組み立てられます。

よくあるエラーと対処法

エラー・症状関数主な原因対処法
#VALUE!VALUE数値として解釈できない文字列(”abc”・”12月分”など)が引数に指定されているIFERROR(VALUE(A2),0)でエラーを処理し、問題セルを特定してデータを修正する
#VALUE!DATEVALUEExcelが認識できない日付形式(”2026.01.15″・”26/1/15″など)SUBSTITUTE関数でピリオドをスラッシュに置換してから渡す
#VALUE!TIMEVALUE時刻として認識できない形式・日付が含まれた文字列MID関数で時刻部分だけを切り出してからTIMEVALUEに渡す
大きな整数が表示されるDATEVALUE日付シリアル値が返っているが表示形式が「標準」のままCtrl+1でセルの書式設定を開き「日付」に変更する
0以上1未満の小数が表示されるTIMEVALUE時刻シリアル値が返っているが表示形式が「標準」のままセルの書式設定を「時刻」(h:mm など)に変更する

エラー処理の実践パターン:変換できない行があっても処理を止めないために、IFERRORと組み合わせます。

=IFERROR(VALUE(A2), "変換エラー")
=IFERROR(DATEVALUE(A2), "日付形式エラー")
=IFERROR(TIMEVALUE(A2), "時刻形式エラー")

エラーが返った行を洗い出した後、元データの形式を修正するか、SUBSTITUTE・LEFT・MID・RIGHTで前処理してから変換関数を適用します。

VALUE関数を使わないテキスト→数値変換の代替手段

VALUE関数以外にも、テキスト型を数値型に変換する方法がいくつかあります。使い分けの目安を整理します。

方法操作例特徴向く場面
VALUE関数=VALUE(A2)関数式として残る。他の関数と組み合わせ可能元データを保持しつつ変換結果を別列に出力したいとき
–(ダブルマイナス)=–A2短い式で数値化できる。TRUEは1・FALSEは0になるSUMPRODUCT・IF条件内で簡易変換したいとき
×1 演算=A2*1算術演算で強制変換シンプルに数値化したいとき
区切り位置ウィザードデータ→区切り位置→完了元データを上書き変換。関数式不要一度だけ変換してファイルを固定するとき
エラーインジケーター→「数値に変換」緑三角を選択して「数値に変換」GUIで簡単。複数セルをまとめて操作可能件数が少なく目視で確認しながら変換するとき
NUMBERVALUE=NUMBERVALUE(“1.234,56″,”.”,”,”)小数点・桁区切り文字をロケールごとに指定可能欧州形式など外国データ(カンマが小数点)を扱うとき

VALUE・DATEVALUE・TIMEVALUEは他の関数と組み合わせて数式の中に埋め込める点が最大の強みです。元データを残したまま変換後の値を別セルに出力するワークフローや、IFERROR・SUMPRODUCTなど上位関数の引数として直接渡すケースに最も効果を発揮します。

MOS Excel試験でのVALUE・DATEVALUE・TIMEVALUE

MOS Excel 365 一般レベル(MO-210)では「数式や関数を使用した演算の実行」がスキル領域の一つとして定められており、VALUE・DATEVALUE・TIMEVALUEはその範囲に含まれます。分野別の出題数・配点は公表されていません。

試験はプロジェクト形式でExcelブックに対して実操作を行います。試験時間は50分、採点は1000点満点です。合格点は非公開ですが、550点~850点程度が目安とされています。受験料は一般価格と学割価格の2種があり(税込)、金額は改定されることがあるため最新の受験料は公式サイトの「受験料・価格」(https://mos.odyssey-com.co.jp/exam/examfee.html)でご確認ください。全国一斉試験の申込締切は試験日のおよそ1か月前(回により異なるため公式サイトの試験日程で確認)です。

試験問題では「テキスト形式で保存されている数値を計算できる形に変換してSUM関数で合計を求めなさい」「日付文字列を変換して日付計算に使えるようにしなさい」といった操作問題が出題される場合があります。以下のチェックリストで操作を確認しておきましょう。

MOS試験 VALUE・DATEVALUE・TIMEVALUE チェックリスト

確認ポイント操作内容難易度
テキスト型数値の識別ISNUMBER・セル左詰め・緑三角でテキスト型を確認できる★☆☆
VALUE関数の基本入力=VALUE(A2)で数値型に変換しSUMが正しく動作することを確認★☆☆
DATEVALUE関数の基本入力と表示形式設定=DATEVALUE(A2)でシリアル値に変換し、書式を「日付」に変更する★★☆
TIMEVALUE関数の基本入力と表示形式設定=TIMEVALUE(A2)でシリアル値に変換し、書式を「時刻」に変更する★★☆
IFERRORとの組み合わせ変換できないデータが含まれる場合に代替値を返す数式を作成★★☆
前処理と組み合わせた変換SUBSTITUTEでピリオドをスラッシュに変換してからDATEVALUEに渡す★★★
他関数への組み込みDATEVALUE・TIMEVALUEをNETWORKDAYS・DATEDIF等の引数に埋め込む★★★

MOS試験の学習時間の目安として、アソシエイト(MO-210)を目指す場合、初学者は40~60時間、Excelを業務で使っている方は20~30時間が目安です。1日1時間のペースなら初学者で約2か月、経験者で3~4週間を目安にしてください。VALUE・DATEVALUE・TIMEVALUEはデータ整形の実務と直結するため、実際のCSVデータを使って繰り返し練習することが最短の習得法です。


VALUE・DATEVALUE・TIMEVALUE関数でExcelのテキストを数値・日付・時刻に変換する|型変換エラーの解消と実務活用パターンとMOS試験対策 - まとめ

まとめ:テキスト型データを変換して計算の土台を整える

本記事のポイントをまとめます。

  • VALUE関数:数値を表す文字列を数値型に変換。カンマ・通貨記号・パーセントも対応。引数は文字列1つだけ
  • DATEVALUE関数:日付文字列を日付シリアル値(整数)に変換。変換後は表示形式を「日付」に設定する
  • TIMEVALUE関数:時刻文字列を時刻シリアル値(0以上1未満の小数)に変換。変換後は表示形式を「時刻」に設定する
  • 診断方法:=ISNUMBER(A1)でFALSEが返ればテキスト型。セルが左詰め・緑三角でも確認できる
  • #VALUE!の主な原因:認識できない文字列形式。IFERRORで処理しつつ元データを修正する
  • 代替手段との使い分け:他の関数に組み込む場合はVALUE/DATEVALUE/TIMEVALUEが優先。元データを上書きして構わない場合は区切り位置ウィザードも有効
  • MOS試験:「数式や関数を使用した演算の実行」領域に含まれる。IFERRORとの組み合わせ・表示形式の変更操作まで確認しておくこと

外部データとの連携が多い実務環境では、このデータ型変換スキルがレポート作成・集計処理の信頼性を左右します。VALUE・DATEVALUE・TIMEVALUEをマスターすることで、「合計が合わない」「日付計算がおかしい」「時刻を引き算できない」といったトラブルの大半を根本から解消できます。

PR

できるExcel関数 Copilot対応

VALUE・DATEVALUE・TIMEVALUEをはじめとした実務で使う関数を丁寧に解説。Copilot連携まで収録した最新版で、データ型変換から集計・検索まで体系的に学べます。

PR

今すぐ使えるかんたんbiz Excel関数+組み合わせ 効率UPスキル大全

単体関数の使い方から複数関数の組み合わせパターンまでを一冊で網羅。IFERROR・SUBSTITUTE・TEXTとの組み合わせなど、実務データ整形に直結するテクニックが充実しています。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次