【ACCESS】インポート定義を使わないCSVインポート
ACCESS VBAにてMDBにSQL文でCSVデータをINSERTしようとしています。INSERT自体はうまくいったのですが、データの型をうまくそろえられません。2日程ネットサーフィンしているものの良いサンプルを見つけられません。有識者の方、ご存知でしたら是非教えてください!
まず、CSVデータは以下のようなものです。
===aaa.csv===
00000001,2009/1/31
00000002,2009/1/31
・
・
A000001,2009/1/31
Z000002,2009/1/31
==========
これを 既存テーブル:aaa_TBLに取り込ませたく、以下のSQL文を書きました。
INSERT INTO aaa_TBL(カラム1,カラム2) SELECT FORMAT([aaa#CSV].F1,'0000000'),[aaa#CSV].F2 FROM aaa#csv IN 'C:\' 'Text;HDR=NO'
これにて「0000001」と「000002」等のレコードは正常に取り込むことができましたが、「A000001」「B000002」等のデータは取り込まれず、NULLにて登録されておりました。
(aaa_TBL自体はカラム1=テキスト型、カラム2=日付型でCreateされております。)
これを回避したく、いろんなサイトを訪問したのですが、ほとんどがインポート定義を使った方法を推奨しておりました。
しかしながら、私にはどうしてもインポート定義が理解できないんです!
「VBAにて○○.iniを作成する方法」などをよく見かけるんですが、できるだけ他の方法を検討したいと考えております。(今後、ACCESS VBAから他言語への乗り換えを考えているとか、他CSVにてインポートされるテーブルの数が30個程あるので、インポート定義ファイルの管理がつらいな・・・とか色々他にも理由はあるんですが・・・・)
何か良い方法はないでしょうか?!
やはりインポート定義を作らないとだめでしょうか?!
その場合、簡単なサンプルコードなどを頂けますと非常に助かります。。。(MSサイトのサンプルコードは理解できませんでした。。。)
まだVBAを勉強し始めて2週間なので、色々突っ込みどころはあると思いますが、どうぞよろしくお願いしますm(_ _)m
お礼
すみません。回答いただきありがとうございました。どうやら勘違いをしていたようで、ワークシートインポートウィザードを開いていました。
補足
テキストです。 Access2000そしてWindows2000です。 Accessインストール時に問題があったのでしょうか?