Excel VBAのADODBでCSVファイルを扱う時にデータ型を指定する。 | catslivingの育児もWEBも全力投球!

catslivingの育児もWEBも全力投球!

大阪在住のSE。頼もしい嫁とやんちゃな2人息子、かわいい猫娘2人のぐだぐだ生活。WEBサービスや社内向けアプリ制作中心にPHP、Excel VBA、Delphi等で活動中。社内の何でも屋(^^;

Excel VBAのADODBでCSVファイルを扱う時にデータ型を指定する。

Excelで巨大なCSVファイルを扱いたい場合、ADODBで接続すれば、
簡単にデータを取得できる。
(数十万行のCSVをExcelで開くのは無謀と言うか無理。)

その際に、各フィールドのデータ型が問題になる時がある。
バリアントで設定してしまえば良いのだが、指定する必要がある場合がある。
基本は自動判別なのだが、意図しないデータ型になる場合がある。

それをきっちりと指定する方法がある。

Execlファイルと同じフォルダに、「Schema.ini」を置く方法だ。

中身は以下のような物だ。

[test.csv]
Col1=ID Long
Col2=商品番号 Char Width 255
Col3=商品説明 Memo

非常に強力な助っ人となる。