テキストデータをACCESSデータベースへ保存するには?

解決


稲兎  2003-08-09 22:46:40  No: 108042  IP: [192.*.*.*]

テキストファイルのデータをACCESSのデータベースへ追加したいと思っていますが、どうすれば良いのか分かりません。
またテキストファイル名の選択は、フォーム上のFileListBoxにて選択したテキスト名のを使用したいと思っています。
どういった方法が可能なのでしょうか?
良きアドバイスをお願い致します。

編集    削除
通りすがり  2003-08-10 00:43:35  No: 108043  IP: [192.*.*.*]

アクセス側でファイル→外部データの取込→インポート
インポートしたいファイルを指定するとウィザードが起動します。区切り位置やフィールド名の設定を行った後インポートの定義を[設定]で行います。
後はインポートしたテーブルデータを処理する追加クエリを作成しマクロを組めば楽だと思いますが…。ダメでしょうか?

編集    削除
稲兎  2003-08-10 00:49:58  No: 108044  IP: [192.*.*.*]

通りすがりさん
レスありがとうございます!
ACCESS側でのインポート方法に尽きましては把握しているのですが、VBのフォーム上にて同じ事が行えないかと思っています。
やはり難しい事なのでしょうか?

編集    削除
Say  2003-08-10 01:16:32  No: 108045  IP: [192.*.*.*]

MS Accessがインストールされているマシンであれば、
Access.ApplicationをCreateObjectすれば可能です。
メソッドの構文についてはAccess VBAのヘルプを参照してください。

MS Accessがインストールされていない場合、
csvであれば、DAO/ADOでテキストデータベースとして開き、
SQLで流し込むことが可能です。

データ形式が特殊な場合、
Scripting.FileSystemObject.TextStreamをCreateObjectするか、
Open ,Input#(あるいはLine Input #)で
テキストファイルとして読み込み、
解析の後DAO/ADOなどで
DAO.DataBase/ADODB.Connection.Execute SQLまたは
RecordSet.AddNew, .Edit, .Updateメソッドで
Insert/Updateすることになるでしょう。

編集    削除
稲兎  2003-08-10 01:44:44  No: 108046  IP: [192.*.*.*]

Sayさんレスありがとうございます!

>MS Accessがインストールされていない場合、
>csvであれば、DAO/ADOでテキストデータベースとして開き、
>SQLで流し込むことが可能です。

との回答を頂きましたが、元のデータはCSVでも構いません。
この場合、元のデータとなるCSVファイルをどのようにしてSQLで流し込む事が出来るのでしょうか?

ACCESSのデータベースをADOを用いてSQLでデータグリッドに表示する方法は把握しているつもりなのですが、CSVのファイルとACCESS側のデータベースを使用する方法が全く分からないのです。

図々しい質問になるかと思いますが、良ければもう少し詳しく教えて下さい。
宜しくお願い致します。

編集    削除
Say  2003-08-10 09:28:44  No: 108047  IP: [192.*.*.*]

とりあえず、「ADO HDR=NO」あたりをキーに自分で調べてみてください。

編集    削除
岡田 之仁  2003-08-11 01:06:22  No: 108048  IP: [192.*.*.*]

ここの掲示板では無かったかもしれませんが・・・

とりあえず、以下のURLをご参照下さい。

http://support.microsoft.com/default.aspx?scid=kb;ja;408179

それと・・・『リンクされたテーブルを作成する』と言う内容があった
のですが、現在のMSでの検索エンジンでは、もうそのページを見つけ
ることができませんでした。
Accessと、他のDB(エクセルやテキストファイル(ISAMとか))と
リンクテーブルを作成して、データの読み書きを、Access経由で行える
という手法のものですが・・・

ご参考までに・・・

以上。

編集    削除
クリリン  2003-08-12 00:32:22  No: 108049  IP: [192.*.*.*]

ヒント!
構造体を使えば、データの取得及びデータベースへの格納などが解り易くなると思います。

また、ADOデータを表示する事が可能なのであれば、SQL文も少しは理解しているのではないかと思うのですが…
特別ヒント!
追加はInsert文、更新はUpdate文、削除はDelete文です。
これ以上は、ご自分でSQLを勉強してください。

参考までに、私が作ったAdo操作クラスを見てみてはいかがですか?
http://www.takonet.co.jp/~pegasus/samples/AdoOperation.lzh

編集    削除
稲兎  2003-08-26 19:46:31  No: 108050  IP: [192.*.*.*]

皆様、回答ありがとうございます。
色々と試してみた結果、思った通りに出来上がりました。
皆様の回答に大変感謝しております。
本当にありがとうございました!

編集    削除