Excelで日付のデータがうまく扱えなかった経験はないでしょうか。「日付データをいつも通りの処理をしているのにエラーが出てしまう」そんな時は、日付が文字列になっていることを疑いましょう。
・日付が文字列になっていると、数式や関数の要素として使えなくなるので、Excel上では文字列から「年/月/日」の形に直しておく必要がある。
・セル内のデータを編集する「LEFT関数」「MID関数」「RIGHT関数」と「DATE関数」を使うことで、文字列になった日付データを「年/月/日」の形に変換することができる。
日付が文字列になるケース
Excelでデータを処理している時、日付のデータが次のように表示されているケースを見たことはないでしょうか。
通常、「2017年7月1日」であれば、「2017/7/1」のように「年/月/日」と「/」(スラッシュ)で区切って入力しますが、「20170701」と8桁の数字が並んでいるだけです。
「20170701」と入力されたデータは、見た目は完全に日付ですよね。ですが、Excel上は日付とは認識されずに文字列として認識されてまうんです。日付をこのままの状態にしていると、いつも通りにデータ処理しようとしてもエラーが出てしまいます。
日付が文字列になるのは、次のようなケースでよく起こります。
・ソフトからダウンロードしたデータ
・ネットからダウンロードしたデータ
もし、データを処理しようとしてエラーが出た場合は、そこで諦めずにデータが文字列になっていないかを疑ってみて下さい。ダウンロードしたデータであればその可能性は高いです。
・ソフトからダウンロードしたデータ
・ネットからダウンロードしたデータ
この2つについて、データ処理がうまくできない場合は、入力されたデータが文字列になっていないかを疑う
日付が文字列のままだと何が問題なのか?
先ほど触れたとおり、日付が文字列になっていると、データ処理の上で問題が生じます。
具体的には、数式や関数の中で日付のデータを使えなくなることです。
数式や関数で日付のデータが使えなくなる
たとえば、DATEDIF関数を使う場合。DATEDIF関数は、このように
始点となる日付と終点となる日付を入力するとその期間を計算してくれる関数ですが、文字列になった日付を始点と終点に指定しても、エラーになり正しい計算ができなくなります。
Excelは、数式や関数、機能を使ってデータを集計するのがメインの役割です。
実務でも、減価償却費、利息、支払期限、在職期間、など日付データを使った計算もよく使われます。ですので、日付もデータ処理できる状態で入力しておかなければいけません。見た目の好みなどは人それぞれあると思いますが、日付を使ったデータ処理の観点から、日付のデータは文字列ではなく「/」を使った形式で入力するようにしましょう。
・日付データは、データ処理できる「年/月/日」の形で入力する
・文字列になっている場合も、「年/月/日」の形に修正する
文字列になった日付を「年/月/日」の形に修正する
日付の入力は「年/月/日」の形で行うべきですが、すでに文字列として日付が入力されている場合は修正しなければいけません。
データの数が多いと、「1つ1つを入力するのはムリ!」と思うかもしれませんが、もちろん手入力する必要はありません。関数を使えばまとめて修正することができます。
例として「20170701」を「2017/7/17」に修正することを考えます。
「LEFT関数」「MID関数」「RIGHT関数」で分割する
まず、「20170701」を「年」「月」「日」に分割して別のセルに入力します。
ここで使うのが「LEFT関数」「MID関数」「RIGHT関数」です。
※セル内のデータを操作する関数をこちらの記事でまとめています。
・指定したセルの入力内容を、左から順番に指定した文字数分表示する
・=LEFT (セル番地, 文字数)
(例)
・指定したセルの入力内容を、開始位置から指定した文字数分表示する
・=MID(セル番地, 開始位置, 文字数)
(例)
・指定したセルの入力内容を、右から順番に指定した文字数分表示する
・=RIGHT関数 (セル番地, 文字数)
(例)
この3つの関数を使って、「20170701」を「2017」「07」「01」に分割します。
DATE関数に「年」「月」「日」を入力
「年」「月」「日」のデータに分割できたら、DATE関数を使って日付データに変換します。
・「年」「月」「日」のデータを入力すると、日付データに変換する
・=DATE(年, 月, 日)
(例)
先ほど分割した「年」「月」「日」のデータをDATE関数に入力すると、
2017/7/1と日付データに変換されました。
なお、データ数が多い場合でも1行目に関数を入力して、2行目以下にコピー&ペーストすれば、まとめて日付データに変換できるのでそれほど手間はかかりません。
まとめ
会計ソフトやネットからダウンロードしたデータの中には、日付が文字列で表示されているものもあります。文字列のままでは関数や数式による処理できないので、日付データを正しい形(「年/月/日」)に変換しておきましょう。
おまけ
アキレス腱の負傷で長時間のランに出られないので、プールで泳ぐことに。後半、死にそうになるけど意外に楽しめてます。