• ベストアンサー

アクセスファイルをtxtファイルにエクスポートする時:

教えてください。 現在、アクセスで多量な宛先データを編集中ですが、テキストファイルに全てのデータをエクスポートさせる際、00001からオートナンバーを振りたいと思っています。現在の設定では、アクセステーブル内にオートナンバー項目を追加するとerror3052が表示されてしまいます。 エクセルにはデータが多すぎて、一括掃出し出来ないため、何か良い方法がありましたら、ぜひ教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#9414
noname#9414
回答No.3

的確な回答かどうか分かりませんが・・・ VBAで何かをしようとしたりそういったことはしてないでしょうか? 参考URLのものをみると、VBA周りで似たような現象に出会った方がいるようです。 それから、データのエクスポート自体は、「ファイル」「エクスポート」で手透きと形式を選択すればできますが、これだとオートナンバーでIDを振って・・・ということはできませんが、逆にインポートする際に、主キーを自動で設定させれば、オートナンバーで連番を振ってくれたような記憶があるのですが・・・ #試すのであれば、必ず新しいデータベースを作って、 #それで試してみてください。 間違いがありましたらご指摘ください。 ではでは☆

参考URL:
http://www2.moug.net/cgi-bin/mdboard.cgi?acm_v+ML2002110251
garfield
質問者

お礼

ご回答いただいた部分で「インポートする際に、主キーを自動設定させれば。。」とは、現在のテーブルを他のデータベースにインポートする時に行うのでしょうか。いつもはテーブルをそのままの形でインポートしていましたので、主キーを設定してインポートを試してみたいと思います。

garfield
質問者

補足

試してみました。ファイルを「エクスポート」で、一度テキストデータに落とした後、再度アクセスデータベースに「インポート」し、その際に主キーを自動設定してみました。 インポートされたファイルは、オートナンバーが振られ、問題なく表示されています。ありがとうございました。m(__)m

その他の回答 (2)

  • souta_n
  • ベストアンサー率33% (79/234)
回答No.2

こんにちわ オートナンバー項目の追加エラーの意味は良くわかりませんが、連番のフィールドを追加してデターアクセスオブジェクト(DAO)を使用して連番を振ることは出来ます。 例えば 問題のテ-ブルを仮に「T_Data」としましょう。 追加する連番のフィールドを「NO」というフィールド名、長整数型とします。(多分Excelに入りきらないということは整数型以上のレコード数なんでしょう) 標準モジュールを1つ作り実行させると連番が振られます。 コードは下記の通りです。 ==================================== Dim DB As Database Dim RS As Recordset Dim Cnt As Long Set DB = CurrentDb Set RS = DB.OpenRecordset("T_Data", dbOpenTable) Cnt = 1 RS.MoveFirst Do Until RS.EOF RS.Edit RS!No = Cnt RS.Update Cnt = Cnt + 1 RS.MoveNext Loop RS.Close DB.Close ==================================== Accessのヴァージョンは何ですか?私は少し古くて97を使用していますので、DAOが標準の参照設定になっていますが、もし2000をお使いでしたら、DAOが標準設定になっていませんので、コードウインドがたち上がっている状態で、ツールメニューの参照設定からMicrosoft DAO 3.51 Object Libraryのところにチェックマークを入れとかないとこのコード動きませんので悪しからず。 がんばってください。

garfield
質問者

お礼

ご回答ありがとうございます。私も古くて97を使用しています。モジュールは組んだことが無かったので、回答いただいたモジュールをそのまま使ってトライしてみます。

回答No.1

 お使いのtableはVBAか何かが絡んでいるのでエラーが出るのでしょう。一旦、新しいtableを作成して、そこにデータを書き出してから項目を追加すればいいんじゃないですか。

garfield
質問者

お礼

ご回答ありがとうございます。VBAが組めるほど精通しておりませんので、会社に出社しましたら新しいTABLEを作成し、試してみます。

関連するQ&A