ぱっと見、日付のように見えるセルが文字列だったことはありませんか?
昇順や降順で並び替えたいのに、できない・・・、そんなときは関数を使って文字列から日付に変えてしまいましょう!
Contents
見た目とセルの書式設定(文字列、日付)
日付のようにみえる、セルをご覧ください。
スラッシュだって入ってるし、8桁だし、日付だよねって思って、昇順にしてみると・・・
このように、時系列に並んでくれないんです。 日付フィルタの「↑」は昇順に並び替えてますよ~という目印です。
この場合、2014年が一番上にきてほしいのですが、文字列となっているため、
「02、03、04、・・・と」文字の頭での昇順となってしまってますね。
セルの書式を見てみると・・・「文字列」になっています。これでは日付として並び替えてはくれませんね。
そこでよくわたしが使う関数をご紹介します。
文字を取り出すにはright left mid 関数を使う
日付に変化するにはこの3つ(right, left, mid)を使います。
それぞれの意味はこちらです。
left(文字列、文字数) | 文字列の左側から指定した文字数を取り出す |
right(文字列、文字数) | 文字列の右側から指定した文字数を取り出す |
mid(文字列、どこから、文字数) | 文字列の、指定した位置から、指定した文字数を取り出す |
日付に変換以外にも、重宝する関数なので是非覚えてみてくださいね。
& アンパサンド
「&」も使います。これは、取り出した文字や数値を繋いで一つの文字や、日付にすることができます。
この「&」は正確には「and」とは異なります。
試しに単純に「&」を「and」にするともちろんエラーになります。
その昔、「アンドでつなげばいいじゃん」、と言われて、やってみると、できなくて、先輩に「できません」と言った記憶があります😥
そして、見てもらうと、「アンドじゃないよ、アンパサンドだよ」とのこと。だってアンドって言ったじゃん!ともやもやしたという、忘れられないエピソードとなりました。
ちょっと脱線しちゃいました。
文字列を日付として変更してみよう
数式あり日付の列には下記の関数が入ってます。
=RIGHT(E4,4)&”/”&LEFT(E4,2)&”/”&MID(E4,4,2)
ここで、数式あり日付を昇順にしてみると、2014年から昇順に並び替えしてくれました!
カンタンに説明すると
RIGHT関数
年をRIGHT(E4,4)を使って、右から4文字、取り出しています。
LEFT関数
月をLEFT(E4,2)を使って、左から2文字、取り出しています。
MID関数
日をMID(E4,4,2)を使って、4文字目から2文字を、取り出しています。
この例題の場合は、月/日付/年の順で並んでいるので、このような書きっぷりになります。
いろいろな組み合わせができるので、是非ためしてみてくださいね。