- ベストアンサー
Accessでdatファイルのインポート
Accessを最近はじめたばかりなので、基本的な内容だったらすいません。 自分なりに調べたんですが、分からなかったので質問させて頂きます。 Access2003 SP1を使っているのですが、datファイル(固定長テキストファイル)をインポートする方法を教えていただけないでしょうか? 拡張子を「.txt」に変更してインポートすればいいのは調べて分かるのですが、業務上datファイルのままでインポートしたいんです。 申し訳ありませんが、ご回答宜しくお願い致します。
- rippey
- お礼率48% (84/172)
- その他(データベース)
- 回答数7
- ありがとう数9
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
> そのまま、インポートするには、レジストリの操作が必要になります。 [ACC2000]ファイルのインポート/エクスポートで '読み取り専用' のエラーが発生する http://support.microsoft.com/default.aspx?scid=kb;ja;436329 > もう少し教えていただけないでしょうか? Sub インポート() Dim strOldName As String Dim strNewName As String strOldName = "c:\xxx.dat" strNewName = "c:\xxx.txt" Name strOldName As strNewName DoCmd.TransferText acExportDelim, _ "インポート定義名", _ "テーブル名", _ strNewName, Name strNewName As strOldName End Sub 標準モジュールに、上記をコピーして、Sub ~ End Sub の間にカーソルを おき、F5 キーを押してください。 #そちらの環境に合わせて、ファイル名や、テーブル名等は修正してください。
その他の回答 (6)
No.5を書いたものです。質問とは関係ないですがお詫びです。 > 当然、スキルアップをしながら作業したいんです。 そりゃそうですよね。 >> スキルアップしたいというなら、やはり忘れて下さい。 rippeyさんのことただの「教えてくん」だと思ってるわけじゃないですからね。今回は即解決よりもじっくりスキルアップを目指したいならって意味で書きました。なんか書き方よくなかったです。ごめんなさい。 がんばってください。応援してます。
お礼
気を遣ってくださって恐縮です。 masa_pee 様が、業務上早い解決を考えて下さったことは本当に感謝しています。 また、丁寧なご回答も初心者の私にとってはありがたかったです。 書き方がよくなかったなんて、とんでもないですよ^^ また機会がありましたら、是非アドバイスをお願いします。
- O_cyan
- ベストアンサー率59% (745/1260)
#4です。 コントロールパネル内かコントロールパネルの管理ツール内にあるODBCデータソースアドミニストレータを開きます。 テキストをODBCで使用するにはTextODBCドライバを使用してまずユーザーDNSを作成します。 ユーザーDNSで追加しTextODBCドライバを選択します。 拡張子が.datは既定にありませんのでオプションで拡張子の追加をします。既定のチェックを外すと追加できるようになるので*.datを追加します。 ファイルDNSで使用するテーブルを定義します。使用するファイルが複数ある場合はそれぞれ上記の設定をします。 使用できない場合ファイルDNSを作成してからユーザーDNSを作れば使用できるはずです。
お礼
丁寧なご回答、ありがとうございます。 早速試させていただきます。 本当にありがとうございました。
> VBAですか・・・まだその使い方が分かりません とのことなので手作業でもいいとしてお話します。さらに >業務上datファイルのままでインポートしたいんです。 は元のファイルの拡張子をいじりたくない、と解釈します。 とすると、元のファイルxxxx.datをxxxx.txtでコピーして使えばいいんじゃないですか。 業務という言葉からお急ぎかと思って。前提間違ってたら忘れて下さい。あとスキルアップしたいというなら、やはり忘れて下さい。
お礼
ご回答ありがとうございます。 また、お気遣い感謝します。 これは、元のdatファイルはとっておいてコピーしたものの拡張子をtxtにして作業すればいいということですよね。 確かに手っ取り早いのでその方法を使いたいのですが、この方法ではなく元のdatファイルをなんとか利用したいと思っています。 当然、スキルアップをしながら作業したいんです。 ありがとうございました。
- O_cyan
- ベストアンサー率59% (745/1260)
datファイルをODBC経由でリンクしてDBと扱えば良いのではないでしょうか。 TextODBCドライバを使って拡張子が.datは既定にありませんのでオプションで拡張子の追加をすれば使えます。 リンクしたdatファイルからMidでも使ってテーブルのフィールドに保存すれば良いと思います。
お礼
ご回答ありがとうございます。 .datを追加することができるんですね! これはどのように設定すればいいのでしょうか? すいません、とにかく初心者なので・・・ 宜しくお願いします。
- Gin_F
- ベストアンサー率63% (286/453)
そのまま、インポートするには、レジストリの操作が必要になります。 VBAを使ってインポートしてよければ、Name ステートメントで、いったん、txtにして、 インポート後、元に戻せばいいと思いますけど。
お礼
お礼が遅くなってしまってすいません。 VBAですか・・・まだその使い方が分かりません(汗 コマンドかなにかで設定するのでしょうか? 申し訳ないのですが、もう少し教えていただけないでしょうか? 宜しくお願いします。
- bin-chan
- ベストアンサー率33% (1403/4213)
> 張子を「.txt」に変更してインポートすればいいのは調べて分かる > datファイルのままでインポートしたいんです。 インポートの最初に、「どのファイルをインポートするのか指定」のダイアログが出ますよね? ここでファイルの種類を「テキストファイル」にする、でOKと思います。 「検索・表示されない」なんてあきらめずにファイル名に「*.DAT」を入れれば表示されますよ。 あとはTXTファイルと同じ処理で良いでしょう。
お礼
お礼が遅くなってすいません。 早速試さしてもらったんですが、「次の拡張子がないテキストファイルはインポートできません:txt,csv,tab,asc,tmp,htm,html」と出てインポートできませんでした。 やり方の問題でしょうか? ありがとうございました。
関連するQ&A
- datファイルをACCESSへのインポートについて
datファイル(固定長)をテキストに変換してからACCESSにインポートする、というやり方をした時、改行コードがなくサイズが大きいためか処理が中断してしまい、インポートできません。 ためしに件数を減らすと、インポートはできますが1レコードとして見えてしまうので、処理上都合が悪い状況です。 このようなデータをインポートするのに良いやり方があれば教えてください。 1ファイルあたりの最大サイズは、1000 * 800件です。 ACCESS2000を使用。
- ベストアンサー
- その他(データベース)
- 拡張子のないファイルをACCESSにインポート
ACCESS2003についての質問です。 データをインポートする際、拡張子の付いていないファイル(データの内容は区切り記号付きテキストファイルで表示することができます。)をACCESSにインポートする方法を教えて下さい。 .txt や .csv などの拡張子をつればACCESSでインポートできるファイルになるのですがその手間を省けないか?と言われています。 それ位してくれよと思うのですが・・・ VBAは少し勉強しているのですが、VBAを利用すればACCESS上でファイルに拡張子を付け加える事は可能になるのでしょうか?教えてください。
- 締切済み
- Access(アクセス)
- PSV形式ファイルをAccessにインポートしたい
いつも楽しく勉強させていただいております。 Access2013を使っています。 やりたいことはこのAccessにPSV形式(","の代わりに"|"で区切られている)のファイルをインポートしたいのですが、うまくいきません。 [外部データ]-[テキストファイル]-[参照]で開くダイアログボックスで拡張子.psvのファイル名を指定すると下記のエラーとなります。 "次の拡張子がないテキストファイルはインポートできません。txt,csv,tab,asc,tmp,htm,html,log" つまり拡張子がいけないようです。 ファイルの拡張子を.csvに変更してインポートするとうまく取り込めるときと"インデックスが有効範囲にありません"のエラーになるときがあります。 うまくいったときにインポートの定義を保存しようとしましたが、できませんでした。 当面の逃げ道としては、"|"を","に変更し、拡張子を.csvにして保存したファイルを取り込んでいます。 それでもいいのですが、何かスマートな解決法はないものでしょうか。
- ベストアンサー
- その他(データベース)
- datファイルからaccessにインポートする方法
ネット上でCGIにて処理されたファイル[.dat]を最終的にaccessのテーブルにインポートしたいのですが、極力自動化できればと思い質問しました。 datの中には個人ID、名前、電話番号、住所などがあります。 (1)accessのインポート機能ではdatから直接取り込めない。 手動でテキストファイルに変換して、インポートを試みましたが、さらに問題が・・・ (2)区切り文字が<>と2文字になっているので、インポート時の処理(区切り文字の指定)では1文字しか指定できない。 ”12345<>たなか<>たろう<>0123-45-6789” ←例 やりたい事は、datからテキストやcsvに変換する処理の自動化。 その中で、区切り文字の変換(テキストエディタの機能を使って、2文字から1文字に変換する事はできました) 理想は1日1回程度、定時に自動で更新する事。 もしくはワンクリックですべての処理を行う事です。 他サイトでも同様の質問をしたのですが、レスがつかず・・・ 無茶なことなのかもしれませんが、ご意見いただければ幸いです。 よろしくお願いします。
- 締切済み
- オフィス系ソフト
- Accessからのインポートについて
Accessからテキストファイル(txt、csv)をまとめてインポートするにはどうすればいいですか? あるフォルダにあるテキストファイルをまとめてインポートできるようなマクロはできるのでしょうか? 分かる方がいましたら、よろしくお願いします。
- 締切済み
- オフィス系ソフト
- TXTで作成したファイルをDATファイルに変換
まだ初心者なので教えて下さい。 AccessでエクスポートしたTXTファイルをDATファイルに変換する方法を教えて下さい。 また、Accessで直接DATファイルでエクスポート及びインポートは出来ないのでしょうか。
- ベストアンサー
- その他(データベース)
- datファイル→csvファイル→datファイル
あるソフトをエクスポートし、そのフォルダの中にあるdatファイルの一つをノートパッドで開くことができました。このdatファイルをcsvファイルにするときれいな表ができあがるので、このままデータを書き直し、また元のソフトにインポートしたいと考えています。しかしcsvファイルのままインポートしたり、拡張子をdatにかえてもデータが壊れたとの表示が出て何度やってもインポートがうまくできません。日付の部分が数値に置き換わっているからなのでしょうか。(datファイルのままノートパッドで開き、中のデータを編集してインポートするとちゃんとインポートできるのですがカンマで区切られているだけなので非常に編集作業がやりにくいですのでなんとかcsvの形でと考えています)編集がしやすく、インポートできる方法を教えて下さい。よろしくお願い致します。
- 締切済み
- その他(業務ソフトウェア)
- datファイルとは?
CGIなどで、外部のdatファイルを読み込んだりすることがあります。 ふと思ったのですが、なぜtxtファイルでは駄目なのでしょう? 別にtxtファイルにも、データは書き込めると思うのですが。 質問の意図が伝わりにくいかもしれませんが、 そもそも拡張子がdatのファイルとは何なのかを教えていただけないでしょうか。
- ベストアンサー
- その他(データベース)
- ".dat"ファイルをインポート定義体で設定する方法
".dat"ファイルをインポート定義体で設定する方法で、ODBCDatabeseを使おうと考えていますが、どのように設定すれば良いのか教えてください。 ※".dat"ファイルの実体は、固定長のテキスト文書です。 なお、どこか参考になるサイトがありましたら、お教え頂ければ幸いです。
- ベストアンサー
- その他([技術者向] コンピューター)
- MS AccessでExcelファイルのインポートは?
AccessのVBAでExcelファイルをインポートするにはどうすればいいのでしょうか? ちなみに DoCmd.TransferText acImportDelim, , "Tmp名簿", strInPutPath & "\名簿.csv", True (strInPutPathは、ダイアログから取得したパスです) では、CSVファイル(TXTファイル)しか読み込めません。 (もちろん、そのため拡張子が「.csv」にしていますが 読み込むファイルをテキストファイルにしたら「.txt」でもいいです) 「ファイル」メニュー(コマンド)の「外部データの取り込み」→「インポート」では、Excelファイルも読み込めるので悔しいです。 これをVBAでやりたいんですが。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
お礼
丁寧なご回答、ありがとうございます。 まだできてはいませんが、なんとかやってみようと思います。 ありがとうございました。