Excel。セルごとに年・月・日が含まれているデータから日付をつくりたい
<DATE+SUBSTITUTE関数>
データを読み込んでみたら、そのあとの作業がスムーズにできないで困るケースがあります。
例えば、年月日がセルごとにわかれているのですが、それぞれに、年・月・日という文字も含まれているために、DATE関数をつかって、手早く日付にすることができません。
DATE関数は、年月日に設定できるのが数値型でなければなりません。
「2023年」のように「年」が含まれていると、文字型になってしまいます。
左揃えになっていることからも、文字型になっていることがわかります。
当然、DATE(a2,b2,c2)としても、エラーが表示されてしまうだけで、日付にすることができません。
置換処理で、「年」とかの文字を空白にしてもいいですが、少し面倒です。
そこで、置換することができる関数であるSUBSTITUTE関数をDATE関数と組み合わせてつかうことで、解決することができます。
D2に次の数式を設定します。
=DATE(SUBSTITUTE(A2,"年",""),SUBSTITUTE(B2,"月",""),SUBSTITUTE(C2,"日",""))
オートフィルで数式をコピーしています。
「SUBSTITUTE(A2,"年","")」を説明します。
SUBSTITUTE関数の最初の引数は、文字列なので、A2を設定します。
2つ目の引数は、検索文字列。年という文字を削除したいので、「”年”」と設定します。
3つ目の引数は、置換文字列。年を削除したいので「””」とすることで、年を消すことができます。
これを、「月」と「日」にも同じように設定してきます。
セルに入力されているデータによっては、簡単に日付にすることができないこともありますので、すんなり日付にできない時には、文字型になっていないかを確認するところから始めてみるといいかもしれませんね。