ITよろづや

ITの参考になる情報を備忘録代わりに残していきます

CSVファイルをエクセルで開くと日付が勝手に変換されて文字列にする手間が面倒

CSVファイルをエクセルで開くと日付が勝手に変換されて文字列にする手間が面倒ということが判明しました。あるシステムにユーザー情報を入れるのですが、その際に、日付が以下のようになっています。

 

202112010000

 

これがエクセルで開くと、勝手に変換されて日付ではなくなるのです。

 

同様の悩みを持っている人がいました。

 

CSVデータの日付変換回避策について

https://answers.microsoft.com/ja-jp/msoffice/forum/all/%EF%BD%83%EF%BD%93%EF%BD%96%E3%83%87%E3%83%BC/682cbe27-fb0b-474d-a2ef-90fba7461926

 

以下は質問の抜粋です。

 

CSVデータについて質問(回避策)いたします。

CSVデータの取り込み作業を行っておりますが、日付設定を任意にyyyy-mm-ddにする必要があります。

表示形式をユーザ定義によって、yyyy-mm-ddにし、保存したものを取り込むことで作業が完結します。

しかしながら、再度CSVデータを開いた途端に、ユーザ定義のyyyy-mm-ddが自動的に日付形式に変換されてしまい、その都度、ユーザ定義yyyy-mm-ddに作り直して、保存するという作業を強いられてしまいます。

CSVデータの「ユーザ定義yyyy-mm-dd」が自動的に「日付形式yyyy/mm/dd」に変換されない方法、回避策などありましたら、ご教示願えませんでしょうか。

 

 

回答の対策です。

 

以下の方法ではどうでしょう。

 

1) Excelを開いて、CSVデータを取り込むセルの先頭位置を指定。
2) 「データ」タブの外部データの取り込みの [テキスト ファイル] を選択。
3) テキストファイルのインポート画面で CSV ファイルを選択して [インポート] をクリック。
4) 元のデータ形式を、カンマやタブなどの区切り文字によってフィールドごとに区切られたデータを選択して [次へ] をクリック。
5) 区切り文字のカンマにチェックを入れて、[次へ] をクリック。
6) ユーザー定義の日付yyyy-mm-ddの列のデータを選択して、列のデータ形式を文字列にして [完了] をクリック。

 

CSVファイルをExcelで開くと、ユーザー定義の日付は無視されて標準の日付形式になるのは Excelの仕様のようなので、文字列として取り込むようにします。

 

 

csvファイルを普通にダブルクリックで開けばいつでもそうなってしまいます。

それは仕様なのであきらめてください。

ダブルクリックで開いてから修正するのと、Excelを起動してから外部取り込みで文字列にしてから開くのと、どちらも手間ですが、Excelを使う以上仕方のないことです。

あなたのやりやすい方法で対処するしかないと思います。

 

ちなみにテキストとして開くと影響はないので、工夫するしかないですね。

 

EPN ノートパソコンスタンド 折りたたみ式 無段階調整 放熱 滑り止め付き 16インチ以下に対応 シルバー