過去ログ

                                Page     431
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼追加!至急!テキストデータのインポートについて  まる 03/11/11(火) 15:53
   ┗Re:追加!至急!テキストデータのインポートについて  イケガミ 03/11/11(火) 16:14
      ┗Re:追加!至急!テキストデータのインポートについて  まる 03/11/11(火) 19:57
         ┗Re:参考URL  イケガミ 03/11/12(水) 2:20
            ┗Re:参考URL  まる 03/11/12(水) 9:07
               ┗Re:参考URL  イケガミ 03/11/12(水) 11:56
                  ┗おぉ〜  まる 03/11/12(水) 21:05

 ───────────────────────────────────────
 ■題名 : 追加!至急!テキストデータのインポートについて
 ■名前 : まる
 ■日付 : 03/11/11(火) 15:53
 -------------------------------------------------------------------------
   下で質問したものです。
テキストデータの名前を変更して、インポートするところまでできました。
transfertextを使って、作成したテーブルにデータをインポートしようとすると、エラーがでてしまい、1件もデータがインポートされません。
やりたいことは、テキストデータの中身を全てテキスト型で取得したいのです。
外部データの取込→インポートと同じことをプログラム上で、条件に応じて動的に行いたいのです。
よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:追加!至急!テキストデータのインポートについて  ■名前 : イケガミ  ■日付 : 03/11/11(火) 16:14  -------------------------------------------------------------------------
   > 条件に応じて動的に行いたいのです。
この条件というのが、どういったものなのかで変わってくるような気も
しますが、

http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=1953;id=access
でいわれてた方法の継続という形がいいかも。

> そのファイルのフィールド数にあったテーブルを作成するまではできましたが、
ここまでできれているのなら、レコードセットを使うことで、レコードを
追加していくことができます。

バージョンが不明ですので、とりあえず過去ログで、
Recordset AddNew
あたりをキーワードに検索してみてください。

 ───────────────────────────────────────  ■題名 : Re:追加!至急!テキストデータのインポートについて  ■名前 : まる  ■日付 : 03/11/11(火) 19:57  -------------------------------------------------------------------------
   ▼イケガミ さん:
ご回答ありがとうございます。
環境はAccess2000で、OSはWINDOWSXPです。
データが数万件あるため、LINE INPUTで処理を行うとかなり時間がかかってしまうため、SQLか、前述の外部データの取込みという方法を試してみたいのですが、いまいちやり方がわかりません(涙)
やりたいことは、外部データのテキストファイルを全てテキスト型のフィールドに取込みたいのですが、何か効率的な方法はありますか?
いろいろ私なりに調べてみましたが、まだまだ、プログラムに不慣れなせいもあって、なかなか思うように進まず困っています。
ご回答よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:参考URL  ■名前 : イケガミ  ■日付 : 03/11/12(水) 2:20  -------------------------------------------------------------------------
   >やりたいことは、外部データのテキストファイルを全てテキスト型の
>フィールドに取込みたいのですが、何か効率的な方法はありますか?

テキストファイルを扱う方法として、複数あります。
で、どれがいいかは一概に言えないのですが、以下のサイトで
解説されてますので、一読してください。

外部テキストファイルとの接続方法
http://www.f3.dion.ne.jp/~element/msaccess/AcTipsGnrlHowToAttachExternalText.html


今回の場合、一番問題となるのはフィールドが確定しない という点だと
思います。
なので、テーブル作成クエリを使うか、一度テーブルを作成してから
TransferText メソッドを使う のどちらかが候補になると思います。

急ぎとのことですが、どちらも試してみて、どっちを採用するか
決めていただくのがいいと思いますよ。

 ───────────────────────────────────────  ■題名 : Re:参考URL  ■名前 : まる  ■日付 : 03/11/12(水) 9:07  -------------------------------------------------------------------------
   ▼イケガミ さん:
>外部テキストファイルとの接続方法
>http://www.f3.dion.ne.jp/~element/msaccess/AcTipsGnrlHowToAttachExternalText.html
ありがとうございます。参考にさせていただきます。

>今回の場合、一番問題となるのはフィールドが確定しない という点だと
>思います。
>なので、テーブル作成クエリを使うか、一度テーブルを作成してから
>TransferText メソッドを使う のどちらかが候補になると思います。
テーブルを作成する件ですが、フィールド数が最小でも22必要となります。
今、adoxのappendメソッドを使って、フィールドを作成しているのですが、テキスト型で文字数を50と制限しています。これで作成しないと、「レコードが大きすぎます」とのエラーがでてしまったので・・・。これで作成したテーブルにtransfertextを使ってデータをインポートしようとすると、エラーが出て1件もインポートできない状態です。

 ───────────────────────────────────────  ■題名 : Re:参考URL  ■名前 : イケガミ  ■日付 : 03/11/12(水) 11:56  -------------------------------------------------------------------------
   >今、adoxのappendメソッドを使って、フィールドを作成しているのですが、
>テキスト型で文字数を50と制限しています。
ADOX は普段使わないので、わからないです。。

SQL文のCreate Table文を使って、RunSQLメソッドあたりで実行してやると
どうなりますか?


>transfertextを使ってデータをインポートしようとすると、エラーが出て
>1件もインポートできない状態です。
エラーメッセージ・エラーテーブル等の情報はないのでしょうか?

 ───────────────────────────────────────  ■題名 : おぉ〜  ■名前 : まる  ■日付 : 03/11/12(水) 21:05  -------------------------------------------------------------------------
   ▼イケガミ さん:
CREATE TABLE使ったらうまくできました(涙)
やっと先に進めます〜。
どうもありがとうございました。
またよろしくお願いします。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 431