"BOKU"のITな日常

BOKUが勉強したり、考えたことを頭の整理を兼ねてまとめてます。

CSVファイルを自動型変換させずに読み込むスマートな方法:EXCEL2016 備忘メモ

f:id:arakan_no_boku:20201225001856p:plain 

EXCELCSVファイルを開いたら、勝手に型変換されて「0001」みたいなコードが「1」にされてしまった・・なんて話は、耳タコですが、それは過去の話です。

目次

CSVファイルを安全に開くスマートな方法

最近はEXCELも進化して、かなりスマートにやれます。

(今、自分はEXCEL2016を使ってるので、それベースで話をしてます)   

a.csvと名前をつけた、こんな感じのCSVファイルがあるとします。

f:id:arakan_no_boku:20201225003708p:plain

これをダブルクリックや、ファイルリボンの開くを使ったりすると、いままで通り、勝手に型変換されてしまいます。

手順1:データリボンを使う

CSVを開くのは、「ファイル」リボンではなく「データ」リボンを使います。

メニューのパターンは2通りあります。

「データの取得」の「テキストまたはCSVから」。

f:id:arakan_no_boku:20201225004108p:plain

または、「新しいクエリ>ファイル>CSVから」です。

f:id:arakan_no_boku:20210303203937j:plain

 CSVファイルを選択して「インポート」ボタンを押します。

手順2:データ型を検出しないを選ぶ

こんな感じの画面が開きます。f:id:arakan_no_boku:20201225004338p:plain

ここで、「データ型検出」のプルダウンで「データ型を検出しない」を選びます。

これで「読み込み」ボタンを押せば、変換なしに開けます。

f:id:arakan_no_boku:20201225004750p:plain

この方法を使えば。

みたいな問題も、「元のファイル」「区切り記号」プルダウンで適切な選択肢を選ぶことで簡単に対応できます。

他のメリット:セルの書式が標準のまま 

上記の方法でCSVを読み込むメリットは、勝手に型変換されないだけではありません。

それは、読み込んだセルの書式が「標準」になっていることです。

だから、計算も普通にできます。

f:id:arakan_no_boku:20201225005442p:plain

以前の方法だと、CSVのデータを型変換なしに読み込もうとすると、書式を文字列にしないといけないことが多かったので、計算できるようにするために、一工夫必要だったりしました。

たとえば、C列が「文字列」になっていて、それを「数字」に戻したい場合です。

該当行の書式を文字列から、数字や標準に戻すだけでは変更されません。

f:id:arakan_no_boku:20201225010913p:plain

こういうとき、ひとつひとつのセルを選択してEnterという地味な作業をしないためには、該当せるの書式をすべて「標準」に戻してから、どこかの空きセルに「1」を入力して、それをコピーして、乗算貼り付けするような「技」が必要でした。

f:id:arakan_no_boku:20201225011026p:plain

乗算貼り付けとはn、変換したいセルを選択して「形式を選択して貼り付け」のダイアログで「値」の「乗算」を選んで貼り付ける方法です。

f:id:arakan_no_boku:20201225011258p:plain

ようするに、「1」を掛け算してまとめて数字に戻したりしてました。 

追加技:テーブルを普通のセルに戻す 

「データ」リボンの機能を使ってCSVを読み込むと、テーブルに読み込まれます。

テーブルは便利で、そのまま使って全く問題はありません。

でも。

たまに「俺はテーブルは好きじゃない」という人もいますので、読み込んだ後で普通のセルに戻す方法を確認しておきます。

テーブルを選択して、テーブルデザインをメニューに表示し「範囲に変換」します。

f:id:arakan_no_boku:20201226134036p:plain

書式(デザイン)は残ったままになるので、デフォルトの白いセルに戻したいときは、テーブルデザインのテーブルスタイルで「なし」にしてから、「範囲に変換」すればいいです。

f:id:arakan_no_boku:20201226134351p:plain

とりあえず。

このくらい知ってると、CSVテキストの読み込みにストレスはなくなります。

今回はこんなところで。

ではでは。

#EXCEL