本記事には広告(PR)が含まれます。
くわしくは プライバシーポリシー をご確認ください。
「20260714」のような8桁の数字を、Excelで「2026/7/14」のような日付に変換したいことはありませんか?
Accessや業務システムから出力したCSVでは、日付がスラッシュなしの8桁で保存されていることがあります。
反対に、システムへデータを入力するときに、Excelの日付を「20260714」のような8桁へ変換したい場合もあります。
Excelでは、同じように見える日付でも、
- 日付として計算できるデータ
- 日付のように見える文字列
- 日付データのまま表示だけ変えた状態
で扱いが異なります。
この記事では、8桁の数字をExcelの日付に変換する方法と、Excelの日付をスラッシュなしの8桁に変換する方法を初心者向けに解説します。
関数だけでなく、区切り位置や表示形式、Power Queryを使う場合についても紹介します。
この記事でできること
- 8桁の数字をExcelの日付に変換できる
- Excelの日付をyyyymmdd形式の8桁に変換できる
- TEXT関数と表示形式の違いがわかる
- 関数・区切り位置・Power Queryを目的別に使い分けられる(早見表あり)
まずは、目的に合う方法を確認してみましょう。
| やりたいこと | おすすめの方法 |
|---|---|
| 20260714を日付データに変換したい | DATE・LEFT・MID・RIGHT関数 |
| 20260714をハイフン付きの文字列にしたい | TEXT関数 |
| 作成した日付文字列を日付データに戻したい | DATEVALUE関数 |
| 関数を使わずに一括変換したい | 区切り位置 |
| 2026/7/14を20260714に変換したい | TEXT関数 |
| 日付データのまま8桁で表示したい | 表示形式 |
| 同じ形式のCSVを繰り返し変換したい | Power Query |
8桁の数字をExcelの日付に変換する方法
8桁の数字が日付として使えないのはなぜ?
Excelに「20260714」と入力しても、通常は2026年7月14日の日付としては認識されません。
「20260714」は、Excel上では単なる数値または文字列として扱われるためです。
Excelの日付は、内部では「シリアル値」と呼ばれる連続した数値で管理されています。
たとえば、セルに「2026/7/14」と入力すると、画面上では日付に見えますが、セルの内部には日付に対応するシリアル値が保存されています。
一方、「20260714」は年月日を並べた8桁の数字であり、Excelの日付を表すシリアル値ではありません。
| セルの内容 | Excel上の扱い | 日付の計算 |
| 20260714 | 数値または文字列 | そのままでは難しい |
| 2026/7/14 | 日付データ | できる |
| TEXT関数で作成した2026/07/14 | 文字列 | そのままでは難しい |
日付の足し算や引き算、曜日の取得、日付順の並べ替えなどを行う場合は、8桁の数字をExcelの日付データへ変換する必要があります。
DATE・LEFT・MID・RIGHT関数で日付に変換する
8桁の数字をExcelの日付データへ変換する場合は、DATE関数と文字列を取り出す関数を組み合わせます。
A2セルに「20260714」が入力されている場合は、次の式を入力します。
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))

結果は「2026/7/14」と表示されます。
この式では、8桁の数字から年・月・日をそれぞれ取り出しています。
LEFT(A2,4):左から4桁を取り出して年にするMID(A2,5,2):5文字目から2桁を取り出して月にするRIGHT(A2,2):右から2桁を取り出して日にするDATE:年・月・日を組み合わせて日付データを作る
たとえば、「20260714」は次のように分解されます。
| 取り出す部分 | 数式 | 結果 |
| 年 | LEFT(A2,4) |
2026 |
| 月 | MID(A2,5,2) |
07 |
| 日 | RIGHT(A2,2) |
14 |

分解した年・月・日をDATE関数に渡すことで、Excelで計算できる日付データに変換できます。
8桁の数字を日付として使用したい場合は、この方法が基本です。
数値と文字列のどちらにも使える
A2セルに入力された「20260714」が数値の場合だけでなく、文字列として保存されている場合にも、基本的には同じ式を使用できます。
ただし、セルの前後に空白が入っていたり、日付以外の記号が含まれていたりすると、正しく変換できないことがあります。
変換できない場合は、元データが正確に8桁になっているか確認しましょう。
結果が数字で表示された場合
数式の結果が「46217」のような数字で表示されることがあります。
これは変換に失敗したのではなく、Excelの日付を表すシリアル値が表示されている状態です。
セルの表示形式を「日付」に変更すると、「2026/7/14」のように表示されます。
- 数式を入力したセルを選択する
- 「ホーム」タブを開く
- 表示形式の一覧から「短い日付形式」を選択する

DATE関数の結果が数字で表示された場合は、表示形式から「短い日付形式」を選択します。
または、Ctrl+1キーを押して「セルの書式設定」を開き、「日付」を選択します。
TEXT関数で区切り付きの文字列に変換する
「20260714」を「2026-07-14」のような区切り付きの文字列へ変換したい場合は、TEXT関数を使用できます。
A2セルに「20260714」が入力されている場合は、次の式を入力します。
=TEXT(A2,"0000-00-00")
結果は次のようになります。
2026-07-14
TEXT関数を使うと、8桁の数字を年・月・日に分けた見た目へ整えられます。
ただし、結果はExcelの日付データではなく文字列です。
=TEXT(A2,"0000/00/00")のようにスラッシュを直接指定すると、Excelの設定や環境によっては#VALUE!エラーになる場合があります。
=TEXT(A2,"0000/00/00")

スラッシュ付きで表示したい場合は、次のように文字列を連結する方法が分かりやすく確実です。
=LEFT(A2,4)&"/"&MID(A2,5,2)&"/"&RIGHT(A2,2)
結果:
2026/07/14
スラッシュを数値書式内で文字として指定する場合は、次の式も使用できます。
=TEXT(A2,"0000""/""00""/""00")
ただし、初心者の方には、LEFT・MID・RIGHT関数と&を使って連結する方法の方が仕組みを理解しやすいでしょう。
DATEVALUE関数で日付データに変換する
TEXT関数で作成した「2026-07-14」は文字列ですが、DATEVALUE関数を組み合わせるとExcelの日付データへ変換できます。
=DATEVALUE(TEXT(A2,"0000-00-00"))

結果が5桁程度の数字で表示された場合は、セルの表示形式を日付へ変更します。
ただし、8桁の数字を直接日付データに変換する場合は、次のDATE関数を使う方が分かりやすく確実です。
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
DATEVALUE関数は、すでに文字列として作成した日付を、あとから日付データへ戻したい場合の補足方法として覚えておくとよいでしょう。
区切り位置を使って関数なしで日付に変換する
すでに入力されている8桁の数字を、関数を使わずにまとめて日付へ変換したい場合は、「区切り位置」を使用できます。
たとえば、「20260714」が縦方向に複数入力されている場合も、セル範囲をまとめて変換できます。
区切り位置で変換する手順
- 8桁の日付が入力されているセル範囲を選択します。
- 「データ」タブを開きます。
- 「区切り位置」をクリックします。

8桁の日付が入力されたセルを選択し、「データ」タブから「区切り位置」をクリックします。 - 「コンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」を選択したまま、「次へ」をクリックします。
- 区切り文字は選択せず、そのまま「次へ」をクリックします。
- 「列のデータ形式」で「日付」を選択します。
- 右側の一覧から「YMD」を選択します。
- 「完了」をクリックします。

区切り位置指定ウィザードを進め、最後に「日付」と「YMD」を選択して「完了」をクリックします。
「20260714」が、Excelの日付データである「2026/7/14」に変換されます。

区切り位置を使う方法は、変換後のセルに数式が残りません。
そのため、次のような場合に向いています。
- 一度だけ変換したい
- 既存データをまとめて変換したい
- 数式を別の列に作成したくない
- 変換後の値だけ残したい
区切り位置は毎回設定が必要
区切り位置で指定した日付の変換設定は、新しく追加した別のデータへ自動的には適用されません。
別のCSVや新しいデータを変換する場合は、基本的にその都度、同じ操作を行う必要があります。
一度だけ変換する場合は便利ですが、毎月同じ形式のCSVを取り込む場合は、少し手間がかかります。
繰り返し同じ変換を行う場合は、Power Queryを利用する方法も検討しましょう。
CSVを繰り返し変換するならPower Queryも便利
毎月同じ形式のCSVを取り込む場合は、Power Queryを使うと変換作業を繰り返し適用できます。
「20260701」のような8桁の日付が入力された列を日付型に変換する場合は、「列の追加」タブから「カスタム列」を選び、次の式を入力します。
Date.FromText(
Text.From([日付]),
[Format="yyyyMMdd", Culture="ja-JP"]
)
[日付]の部分は、実際の列名に置き換えてください。列名が異なっていたり、不要な空白が含まれていたりするとエラーになるため、正確に指定しましょう。この式では、
Text.Fromで8桁の数字を文字列に変換Format="yyyyMMdd"で、文字列が「西暦4桁・月2桁・日2桁」の形式であることを指定Date.FromTextで日付型に変換
しています。
ここで指定しているyyyyMMddはデータを並べ替える設定ではなく、「20260714」の各桁を年・月・日として読み取るための書式です。

変換した列をExcelへ読み込むと、元の8桁データと日付型へ変換したデータを並べて確認できます。

一度変換手順を作成しておけば、次回以降はCSVを差し替えて更新することで、同じ変換処理を適用できます。
少量のデータを一度だけ変換する場合はDATE関数や区切り位置の方が簡単ですが、同じ形式のCSVを繰り返し扱う場合はPower Queryが便利です。
Power Queryの開き方やデータの取り込み、更新方法については、こちらの記事で基本から解説しています。
▶Power Queryとは?できること・使い方・マクロとの違いを初心者向けにやさしく解説
Excelの日付を8桁の数字や文字列に変換する方法
ここまでは、「20260714」のような8桁の数字を日付へ変換する方法を紹介しました。
反対に、Excelに入力されている「2026/7/14」を、スラッシュなしの「20260714」へ変換したい場合もあります。
Accessなどの入力システムでは、日付をスラッシュなしの8桁で入力することがあります。
同じ日付を繰り返し入力する場合は、Excelで8桁に変換してコピーすると、入力の手間や打ち間違いを減らせます。
TEXT関数で日付をyyyymmdd形式に変換する
A2セルに「2026/7/14」という日付が入力されている場合は、次の式を使用します。
=TEXT(A2,"yyyymmdd")
結果は次のようになります。
20260714
TEXT関数では、指定した表示形式に合わせて文字列を作成できます。

yyyymmddには、次の意味があります。
yyyy:西暦を4桁で表示するmm:月を2桁で表示するdd:日を2桁で表示する
月や日が1桁の場合も、自動的に先頭へ0が追加されます。
たとえば、「2026/7/4」を変換すると、次のようになります。
20260704
この方法は、決まった形式でデータを作成したい場合に便利です。
特に、次のような用途に向いています。
- Accessなどの入力システムへ貼り付ける
- スラッシュなしの日付文字列を作る
- CSVへ出力するデータを作る
- 8桁で統一したファイル名を作る
ただし、TEXT関数の結果は日付データではなく文字列です。
日付の計算を続けたい場合は、元の日付が入力されているセルを残しておきましょう。
表示形式を使って日付を8桁で表示する
Excelの日付データを残したまま、見た目だけ「20260714」のように表示したい場合は、ユーザー定義の表示形式を使用します。
日付を8桁で表示する手順
- 日付が入力されているセルを選択します。
Ctrl+1キーを押します。- 「セルの書式設定」が表示されたら、「表示形式」タブを開きます。
- 「分類」から「ユーザー定義」を選択します。
- 「種類」に次の書式を入力します。
yyyymmdd - 「OK」をクリックします。

ユーザー定義の表示形式にyyyymmddを設定すると、日付データのまま8桁で表示できます。
「2026/7/14」が「20260714」と表示されます。
この方法では、セルの中身は日付データのままです。
そのため、8桁で表示されていても、次の操作を行えます。
- 日付の足し算や引き算
- 日付順の並べ替え
- 月や年度の抽出
- 曜日の表示
- 条件付き書式での判定
表示形式は、セルに保存されている値を変えずに、見た目だけを変更する機能です。
他のシステムへ貼り付ける場合は注意
表示形式で「20260714」と表示されていても、他のソフトやシステムへコピーすると、貼り付け先によって結果が変わることがあります。
貼り付け先では、
- 2026/7/14
- 20260714
- 日付のシリアル値
などとして扱われる可能性があります。
確実に「20260714」という8桁の文字列を貼り付けたい場合は、TEXT関数を使用する方が適しています。
TEXT関数と表示形式はどう使い分ける?
TEXT関数と表示形式は、どちらも日付を8桁に見せることができます。
ただし、セルに保存されるデータの種類が異なります。
| 比較項目 | TEXT関数 | 表示形式 |
| セルの中身 | 文字列 | 日付データ |
| 日付計算 | そのままでは難しい | できる |
| 他のシステムへの貼り付け | 8桁で貼り付けやすい | 貼り付け先によって変わる |
| 元の日付 | 別セルに残る | 同じセルに残る |
| おすすめ用途 | CSV・システム入力 | Excel内での日付管理 |
使い分けの目安は次のとおりです。
- 他のシステムへ8桁で貼り付けたい:TEXT関数
- Excel内では日付として計算したい:表示形式
- 8桁の数字を本当の日付へ戻したい:DATE関数
- 文字列の日付を日付データにしたい:DATEVALUE関数
たとえば、Accessの入力欄へ「20260714」と貼り付ける場合は、TEXT関数が向いています。
一方、Excel内の予定表で日付を8桁表示にしながら、日付順の並べ替えや曜日の判定も行いたい場合は、表示形式を使う方が便利です。
日付から月や年度、曜日だけを取り出したい場合は、別の記事で詳しく紹介しています。
▶Excelで日付から月だけ抽出する方法|年度・曜日・年月表示も解説
日付を和暦の数字に変換する方法
「エクセル 8桁 日付和暦」と検索されることもありますが、和暦には西暦のyyyymmddのような共通の8桁形式があるわけではありません。利用するシステムによって、元号や年の桁数が異なることがあります。
たとえば、令和8年7月14日を「080714」のような6桁で表示する場合は、次の式を使用できます。
=TEXT(A2,"eemmdd")
結果例:
080714
eeは、和暦の年を2桁で表示する書式です。
和暦名を含めて「令和8年7月14日」と表示する場合は、次の式を使用します。
=TEXT(A2,"ggge年m月d日")
結果例:
令和8年7月14日

ただし、システムによっては、次のように入力形式が異なります。
- 080714
- R080714
- 令和080714
- 令和8年7月14日
和暦の日付を変換する場合は、貼り付け先や入力先で指定されている形式を先に確認しましょう。
「和暦の8桁」という表現だけでは、元号を含むのか、年を何桁で表すのかが判断できない場合があります。
日付を6桁の数字で表示する方法
西暦の下2桁を使用して、日付を「260714」のような6桁で表示する場合は、TEXT関数を使用します。
=TEXT(A2,"yymmdd")
日付データのまま6桁で表示したい場合は、ユーザー定義の表示形式にyymmddを設定します。
ただし、「260714」だけでは1926年と2026年を区別しにくいため、長期間保存するデータでは8桁のyyyymmdd形式がおすすめです。

日付データのまま6桁で表示したい場合は、ユーザー定義の表示形式に次の書式を設定します。
yymmdd

ただし、「260714」だけでは、1926年7月14日なのか、2026年7月14日なのか判断しにくくなります。
短期間だけ使用するデータであれば問題にならない場合もありますが、長期間保存するデータや他の人と共有するデータでは、8桁のyyyymmdd形式を使う方が安全です。
5桁や6桁の数字が日付に見えるのはなぜ?
Excelでは、「46000」のような5桁の数字に日付の表示形式を設定すると、日付として表示されることがあります。
これは、Excelの日付がシリアル値で管理されているためです。
シリアル値とは、特定の日付を起点として何日経過したかを表す数字です。
そのため、5桁の数字がExcelの日付に変換されることがあります。
一方、「260714」のような6桁の数字は、西暦の下2桁・月・日を並べた数字です。
Excelの日付を表すシリアル値ではないため、表示形式を日付に変更しただけでは「2026/7/14」にはなりません。
次の2つは別のデータです。
- 46000など:Excelの日付を表すシリアル値
- 260714など:年月日を並べた6桁の数字
6桁の数字を日付へ変換する場合は、年・月・日をそれぞれ取り出してDATE関数で組み立てる必要があります。
ただし、年が2桁の場合は、1900年代と2000年代のどちらとして扱うかを決める必要があります。
8桁の日付を変換できないときの確認ポイント
8桁の数字を日付へ変換できない場合は、元データやセルの表示形式を確認しましょう。
年月日の順番を確認する
この記事で紹介した数式は、「西暦4桁+月2桁+日2桁」のyyyymmdd形式を想定しています。
たとえば、次のようなデータです。
20260714
データがddmmyyyyやmmddyyyyの順番になっている場合は、数式を変更する必要があります。
8桁すべて入力されているか確認する
月や日が1桁の場合も、8桁の日付では0を付ける必要があります。
正しい例:
20260704
7月4日を「202674」のように6桁で入力すると、年・月・日を正しい位置から取り出せません。
空白や記号が混ざっていないか確認する
セルの前後に空白が入っていたり、ハイフンやスラッシュが含まれていたりすると、8桁を前提とした数式では正しく変換できないことがあります。
見た目ではわかりにくい空白が含まれている場合もあるため、元データを確認しましょう。
存在する日付か確認する
「20261301」のように13月になっているデータや、「20260732」のように日が範囲を超えているデータは、正しい日付ではありません。
また、DATE関数には、範囲を超えた月や日を自動的に繰り上げる性質があります。
たとえば、存在しない「20260231」を変換すると、エラーではなく3月の日付として計算される場合があります。
変換結果だけでなく、元の8桁データに誤りがないか確認することが大切です。
数値と文字列が混在していないか確認する
同じ列の中に数値と文字列が混在していると、並べ替えや検索の結果が不自然になることがあります。
見た目が同じ「20260714」でも、数値として保存されているセルと文字列として保存されているセルは別のデータです。
必要に応じて、データの種類を統一しましょう。
変換後の表示形式を確認する
DATE関数やDATEVALUE関数で変換した結果が、5桁程度の数字で表示される場合があります。
これは日付のシリアル値です。
セルの表示形式を「日付」に変更すると、スラッシュ付きの日付として表示できます。
Excelの8桁の日付変換でよくある質問
Excelで数値8桁を日付に変換するには?
A2セルに「20260714」が入力されている場合は、次の式を使用します。
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
8桁の数字から年・月・日を取り出し、DATE関数でExcelの日付データを作成します。
結果が数字で表示された場合は、セルの表示形式を日付に変更してください。
yyyymmdd形式をスラッシュ付きの日付に変換するには?
日付の計算に使えるデータへ変換する場合は、DATE関数を使用します。
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
見た目だけ「2026/07/14」のように整える場合は、次の式も使用できます。
=LEFT(A2,4)&"/"&MID(A2,5,2)&"/"&RIGHT(A2,2)
ただし、この式の結果は文字列です。日付計算に使う場合は、DATE関数を使用する方が分かりやすいでしょう。
8桁の文字列も日付に変換できる?
「20260714」が文字列として保存されている場合も、DATE・LEFT・MID・RIGHT関数で日付へ変換できます。
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
ただし、文字列の前後に空白や記号が含まれている場合は、正しく変換できないことがあります。
Excelで文字列を8桁にするには?
日付データを8桁の文字列に変換する場合は、TEXT関数を使用します。
=TEXT(A2,"yyyymmdd")
月や日が1桁の場合も、先頭に0が追加され、必ず8桁で表示されます。
日付を8桁に変換すると月や日の先頭の0は消える?
TEXT関数でyyyymmddを指定すれば、月や日が1桁の場合も先頭の0は消えません。
たとえば、「2026/7/4」は「20260704」に変換されます。
=TEXT(A2,"yyyymmdd")
表示形式を使う場合も、yyyymmddを設定すれば8桁で表示できます。
Excelで日付を6桁で表示するには?
西暦の下2桁を使用する場合は、次の式を使用します。
=TEXT(A2,"yymmdd")
「2026/7/14」は「260714」と表示されます。
ただし、年が2桁になると年代を判断しにくくなるため、長期間使用するデータでは8桁の日付がおすすめです。
日付や時刻の設定を、もう少し体系的に学びたい方へ(PR)
Excelの日付は、見た目だけでは「日付データ」と「文字列」の違いが分かりにくく、関数や表示形式を使う場面で迷いやすい部分です。
「数式を覚えるだけでなく、日付の仕組みから理解したい」という方は、日付・時刻に特化した動画講座で一度体系的に学んでおくと、毎回調べる手間を減らせます。
TEXT関数や表示形式、日付の抽出・作成・計算まで、実際にExcelを操作しながら学べます。
まとめ:8桁の日付は用途に合わせて変換方法を選ぼう
Excelで8桁の日付を変換する方法は、変換後のデータをどのように使用するかによって異なります。
「20260714」のような8桁の数字を、日付の計算に使えるデータへ変換する場合は、DATE・LEFT・MID・RIGHT関数を使用する方法が基本です。
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
「20260714」をハイフン付きの文字列へ整える場合は、TEXT関数を使用できます。
=TEXT(A2,"0000-00-00")
スラッシュ付きの文字列にする場合は、次のように文字列を連結します。
=LEFT(A2,4)&"/"&MID(A2,5,2)&"/"&RIGHT(A2,2)
どちらも結果は文字列です。
TEXT関数で作成した日付文字列をExcelの日付データへ変換する場合は、DATEVALUE関数を組み合わせる方法もあります。
=DATEVALUE(TEXT(A2,"0000-00-00"))
反対に、Excelの日付を「20260714」のような8桁へ変換する場合は、次のように使い分けましょう。
- 他のシステムへ8桁で貼り付ける:TEXT関数
- 日付データのまま8桁で表示する:表示形式
- 関数を使わず一括で日付に変換する:区切り位置
- 同じ形式のCSVを繰り返し変換する:Power Query
一度だけ変換する場合と、毎月同じ作業を繰り返す場合でも、適した方法は異なります。
用途に合った変換方法を選ぶことで、日付の入力やデータ整理にかかる手間を減らせます。
【関連記事】
Excelでカレンダーや日付を扱う場合は、次の記事もあわせて参考にしてください。
- Excelで日付から月だけ抽出する方法|年度・曜日・年月表示も解説
- エクセルで土日・祝日に自動で色を付ける方法|条件付き書式で表・カレンダーを見やすく!
- エクセルで31日がない月を自動で非表示にする方法|IF関数でカレンダーを見やすく!
※外部リンク※
- TEXT 関数 |Microsoft サポート
- 区切り位置指定ウィザードを使用して、テキストをさまざまな列に分割する |Microsoft サポート
- 文字列形式の日付を日付形式に変換する |Microsoft サポート
※参考書籍 (PR)※
▶今すぐ使えるかんたん Excel関数[Office 2024/2021/2019/Microsoft 365対応版](Amazon)
※本ボックスにはアフィリエイトリンク(PR)が含まれます。
くわしくは プライバシーポリシー へ。
