
社内SEの仕事をしていて、EXCELの日付のセルを文字列のセルに張り付けると数字になってしまう。
という問い合わせがあったのでそれの解決方法を備忘録として載せておきます。
バージョンはEXCEL2016です。
日付セルを文字列に変換すると数字になる現象を解決する方法を2つ紹介していきたいと思います。
1.TEXT関数を利用する。
2.メモ帳(テキストエディタ)を利用する。
それでは早速見ていきましょう。
現象:日付セルを文字列に変換する
まずは、どのような現象になるか確認してみましょう。
下の画像のように、セルに日付を入力しているエクセルシートがあります。
この日付のセルを「文字列」に変換してみましょう。
文字列に変換すると、A3のセルが「43922」という値に変換されてしまいました。
このように、日付を文字列に変換すると、「シリアル値」と呼ばれるものに変換されてしまいます。
シリアル値は、1900年1月1日を、1としており、そこから1日ずつ1を足していく値になります。
このように、EXCELの日付は、実はシリアル値として管理されているのです。
ですがこれでは見にくいので、表示を整えてあげましょう。
TEXT関数を利用する方法
シリアル値を元の表示に変換する方法として、TEXT関数を利用した方法を紹介していきます。
TEXT関数の使い方は、このようになります。
=TEXT(対象のセル,"変換したいフォーマット")
まずは、A3のセルを「yyyy/mm/dd」に変換してあげましょう。
この例では、フォーマットの形を「yyyy/mm/dd」としていますが、利用したいフォーマットに変更して利用してください。
=TEXT(B3,"yyyy/mm/dd")
これで変換することができます。
下の画像のように、F3セルからTEXT関数を利用して表示してみました。
関数で変更できた値をコピーしましょう。
そして、貼り付けたい場所(例では元のB3)に「値」貼り付けをすることで文字列に変更することができます。
文字列の方ですが、日付の表示がシリアル値ではない形で見えていますね。
TEXT関数を利用した方法は、以上になります。
メモ帳(テキストエディタ)を利用した方法
つづいて、メモ帳を利用した方法を紹介します。
こちらのほうが簡単なのでよく利用します。
まずは、変換したい日付のセルをコピーします。
そして、コピーした値を、メモ帳に貼り付けます。
変換したいセルを文字列に変換します。
先ほどと同じようにシリアルになってしまいました。
次に、メモ帳に貼り付けしてある値をコピーして、文字列のセルに貼り付けましょう。
すると、文字列の日付がうまく表示されましたね。
まとめ
今回は、日付のセルを文字列に変換する方法についてまとめました。
日付セルを文字列に変換するとシリアル値になってしまい困ってしまうという方は、是非参考にしてみてください。
今回は、2つの方法を紹介しました
1.TEXT関数を利用する。
2.メモ帳(テキストエディタ)を利用する。