データによっては、日付が「8桁の数字」として記録されているケースもある。たとえば、2023年8月7日の日付が「20230807」と表記されている場合などだ。今回は、こういった「8桁の数字」を「日付データ」(シリアル値)に変換する方法、ならびに、その逆変換について紹介していこう。

「8桁の数字」を「日付データ」に変換する方法

システムからダウンロードしたデータを扱うときに、日付が「8桁の数字」で記録されているデータに遭遇することもある。たとえば、2022年12月15日は「20221215」、2023年8月7日は「20230807」という具合に日付が記録されているケースもある。このような記述形式は、日付を含むファイル名にもよく利用されている。

ただし、このままでは日付データとして扱えないので、文字を抜き出す関数LEFT、MID、RIGFHTを使って「8桁の数字」を「日付データ」(シリアル値)に変換する方法を紹介していこう。

  • 文字を抜き出す関数LEFT、MID、RIGFHTの応用的な使い方

ここでは、あるユーザーのポイント履歴を記録した表を使って、具体的な手順を解説していこう。この表の1列目には、日付が「8桁の数字」で記録されている。

  • 「8桁の数字」で日付が記録されている表

まずは、データ変換用に列を挿入する。

  • 変換用の列を挿入

続いて、「8桁の数字」から最初の4文字(年)、中間の2文字(月)、最後の2文字(日)を抜き出す作業を進めていく。このように、データから「指定した数」だけ文字を抜き出したいときは、LEFT、MID、RIGHTといった関数を活用するとよい。

「関数LEFT」は、データの先頭から指定した「文字数」だけ文字を抽出する関数となる。その書式は以下のとおりで、第1引数に「文字列」、第2引数に抜き出す「文字数」を記述する。

◆関数LEFTの書式
 =LEFT(文字列, 文字数)

関数LEFTは、基本的に「文字列データ」に対して使用する関数となるが、今回の例のように「数値データ」に対して文字の抽出を行うことも可能だ。今回の例の場合、以下のように関数LEFTを記述すると、「8桁の数字」から「最初の4文字」を抽出できる。

  • 関数LEFTを使った「年」の抽出

  • 文字列データとして抽出された「年」

これで「年」の部分だけを抽出できたことになる。なお、抽出結果が「左揃え」で配置されていることからも分かるように、抽出後のデータは「文字列データ」として扱われる仕様になっている。

続いては、「関数RIGHT」の使い方を紹介していこう。こちらは、データの末尾から指定した「文字数」だけ文字を抽出する関数となる。

◆関数RIGHTの書式
 =RIGHT(文字列, 文字数)

たとえば「=RIGHT(A2,2)」と関数を記述すると、「A2セルのデータ」から「末尾の2文字」だけを抜き出すことが可能となる。A2セルが日付を示す「8桁の数字」であった場合は、「日」の部分だけを抽出できることになる。

最後に紹介する「関数MID」は、データの中間部分にある文字を抜き出す関数となる。引数は3つ必要で、「何文字目から」を第2引数、「何文字分」を第3引数で指定する仕様になっている。

◆関数MIDの書式
 =MID(文字列, 開始位置, 文字数)

たとえば「=MID(A2,5,2)」と関数を記述すると、「A2セルの5文字目から2文字分」のデータを抜き出すことができる。A2セルが日付を示す「8桁の数字」であった場合は、「月」の部分だけを抽出できることになる。

このようにLEFT、MID、RIGHTといった関数を使うと、「年」、「月」、「日」に相当する文字(数字)だけを抽出することが可能となる。あとは、関数DATE(※)で「日付データ」に変換するだけだ。

(※)関数DATEの使い方は、第17回の連載で詳しく解説。

  • 年/月/日を抽出し、関数DATEで日付データを作成

関数DATEの引数は「数値データ」で指定するのが基本となるが、今回の例のように「数字だけの文字列データ」であった場合、Excelが勝手に「数値データ」に変換してくれる。よって、問題なく使用することが可能だ。

「Enter」キーを押して関数を実行すると、正しく「日付データ」に変更されていることを確認できるだろう。

  • 「日付」に変換されたデータ

以上が「8桁の数字」を「日付データ」に変換するときの正攻法となる。LEFT、MID、RIGHTといった関数は「文字列データ」に対して使用するのが一般的であるが、今回の例のように「数値データ」に対して活用できるケースもある。

もっと手軽に「日付データ」に変換するには?

この記事は
Members+会員の方のみ御覧いただけます

ログイン/無料会員登録

会員サービスの詳細はこちら