Excel。読み込んだ時間が5桁6桁の数値だったので時間にするにはどうしたらいい。
<TEXT+TIME+MID関数>
データを読み込んでみたら、時間のデータが、なんと数値になっていた。
しかも、0~9時台は、5桁の数値。
それ以降は6桁の数値として、入力されていることがわかりました。
どうしたら、時間に変更することができるのでしょうか。
C2に設定した数式は、下記のようになります。
=TEXT(TIME(MID(TEXT(A2,"000000"),1,2),MID(TEXT(A2,"000000"),3,2),MID(TEXT(A2,"000000"),5,2)),"h:mm:ss")
数式自体は、長いのですが、やっていることは、同じようなことをやっていますので、一つずつ確認していきます。
MID関数は、指定した文字列から指定した文字数目から、指定の文字数を抽出する関数です。
MID関数の引数に、TEXT(A2,"000000") とTEXT関数をつかっているのは、5桁の場合、つまり0時台~9時台までの場合、頭に「0(ゼロ)」をついかしたいわけです。
数値の前に「0」を付けることはできませんので、表示形式のTEXT関数をつかって、5桁の場合0を付ける作業をしています。
6桁はそのままです。
これで、5桁のデータも6桁にすることができましたので、時・分・秒のデータを抽出しますので、MID関数をつかうというわけです。
あとは、TIME関数で、時・分・秒のデータを結合させれば、完成です。
ただ、今回その外側にTEXT関数を設定しているのは、AM/PM表示になってしまいます。
h:mm:ss形式で表示したかったので、TEXT関数をつかって、表示形式を整えてみました。
そもそも、時間として入力されていればいいわけですが、もし数値だった場合は、手間がかかってしまいます。