OSは98、Access2000です。
あるオフィスコンピュータよりデータを、txt形式(カンマ区切り)でAccessにインポートしたいのですが、データの中に「"」が使用されていて、そのままインポートすると「解析不能の・・・」というエラーが出てしまいます。
そこで、Accessにデータをインポートする前に、置換処理をかけて「"」を違う文字に変換しそれからAccessにインポートするというような感じにしたいのですが、どなたかご教授いただけないでしょうか。
毎日インポートするデータですので、何かのボタンをクリックしたら実行されるような形で作りたいと思っております。
本当に少しならVBAが分かるようになってきましたので、アドバイス等よろしくお願い致します。
No.5ベストアンサー
- 回答日時:
再び登場します。
>ミドルウエアとは何でしょうか
失礼しました。お分かりでないとのことでしたので補足します。
オフコンからPCへあるいはその逆も、資源を共有する場合では、それぞれの異なるプラットホームから直接データーを扱うことができません。
その場合に中間的にツールを配置して、それぞれのプラットホームにあわせたデーター変換(コンバート)を実現するものです。起動とデーター獲得要求は、PC側からのコマンド発行となり、オフコンはデーターベースサーバーとして振舞われます。
最近のオフコンには、PCとの接続を可能にするツールがデフォルトで配置されている場合もありますが、大抵はオプション購入になっています。
また、オフコンだけに用意されていても、PCにもそのコマンドを発行する仕組みがいりますので、この部分を総称しています。
>RDBには対応していないと言われました。
データー作成側は、外部でしょうか?
>1001","ABCDEF","1","○×株式会社","塩ビ管60””","エンビカン60""","50本","15000"
のデーターですが、コピー&ペーストして私の環境でやりましたが、不完全なデータです。そのものズバリのデーターでしょうか??
試しを一つ、Excelで表示できるのであればそのまま、名前を付けて保存で、CSVにしてみてください。このファイルをAccessでインポートしたらどうなりますか?
tadanokumaさん親切にありがとうございます。
>試しを一つ、Excelで表示できるのであればそのまま、名前を付けて保存で、
>CSVにしてみてください。このファイルをAccessでインポートしたらどうなります>か?
この方法は前回一度試してみた方法で、そのときはだめでしたが、先程試しにもう一度やってみたところエラーが出なくなりました。
前回と状況が違っていたためかと思いますが、とりあえずエラーが出なくなったので、この方法を使わせていただこうと思います。
万一、使用している中でまた出るようでしたら質問させてください。
大変に勉強させていただきました。
また、長い時間ありがとうございました。
No.4
- 回答日時:
msystemさんのやり方はダメなんですか?
VBではなくアクセスのウィザードでできますよ。
オフコンから吐き出されるテキストファイルのテキスト区切り記号は、なくすか固定長に変えたほうが良いと思います。
この回答への補足
storkさんありがとうございます。
だめではないのですが、元データの「"」を違うものに一括変換しようとして、VBでプログラムを作ってみたりしたのですが、どうしてもうまく動かなかったため時間の関係であきらめてしまったのですf^^;
さらに勉強をして再度挑戦しようとは思ってます。
テキストを固定長にかえるやり方ですが、Accessへのインポートの時に選択するところでよかったでしょうか?
一度やってみました、そのときはうまくいかなかったのですが、あれから状況が変わってますので再度やってみようと思います。
ありがとうございます。
No.3
- 回答日時:
再度登場します。
現状のファイルでわかりました。
原因は、オフコンから直接書き出す場合(DB連携でミドルウエアを介す。MS-DOSコンバーターがミドルウエアにある)に、ダブルクォーテンションが設定選択されていると思われます。(ODBCの場合)
PCミドルウエアで定義されているのであれば、そのミドルウエアのソ説に定義はでています。ファイル書き出し形式は、CSV,SDF,SYLK,MSDOSがありますが、どれでしょうか?
DB連携には、オフコンメーカーからいろんなツール(ミドルウエア)がありますので、メーカー毎でなんと言うツールなのか?推測ができませんので、違っているかもしれません。
今後、中間処理(”を取り除く)でVBやその他のコンバート作業を追加することより、ファイルを書き出す定義を修正した方が得策なのですが、オートメーション機能(サーバー機能の一つ)をご使用になりたいのであるなら、あなたの言われるVBの定義をAccessで作成することになります。
その定義についても、ミドルウエアのソ説に定義方法が載っていると思います。
いづれにしても、解決するにはPC側のミドルウエアの設定操作あるいは、オフコンのDB連携の操作ができますか?です。
判る限りの補足を希望します・・。
この回答への補足
ありがとうございます。
知識不足で申し訳ありませんが、ミドルウエアとは何でしょうか。
オフコンの方はほとんどわからないのですが、RDBには対応していないと言われました。
いただいた回答の半分も理解できていないと思いますが、定期を修正したほうがよいのかな、ということはわかりましたf^^;
が、どうやればよいのかわかりません、多分これ以上難しくなると理解できなくなってしまいそうですが、ヒントなどいただけるとうれしいです。
No.1
- 回答日時:
1001,"ABCDEF",1,"○×株式会社",0,0,1
↑こんな情報ですかね?
また、そのファイル名の拡張子は"txt"なのでしょうか?
>あるオフィスコンピュータよりデータ
とあるのですが、他のRDBからミドルウエアを介してのPCデータ変換と思いますが、csv形式で出力が可能と思いますがどうでしょうか。?
また、Accessでもcsvのインポートは出来ると思います。
確認ですが、現行のファイルにてテキストインポートウィザードの区切り記号付きと固定長があると思いますが、区切り記号付きにして次へ、カンマにチェックとテキスト区切り記号のところに[”]が入っていますか?
いづれにしても、オフコンからの出力データの1レコードが分かれば詳細にわかると思います。
この回答への補足
アドバイスありがとうございます。
また、返事か遅くなりすみません。
補足いたします。
>確認ですが、現行のファイルにてテキストインポートウィザードの区切り記号付き>と固定長があると思いますが、区切り記号付きにして次へ、カンマにチェックとテ>キスト区切り記号のところに[”]が入っていますか?
はい、これはやってみましたが、やはりエラーが出てしまいました。
データは
1001","ABCDEF","1","○×株式会社","塩ビ管60””","エンビカン60""","50本","15000"のような感じで、一応拡張子はcsvで落ちていて、エクセルで開くとちゃんと開きますが、Accessでインポートするとやはりエラーが出てしまいます。
説明が下手で申し訳ありませんが、よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ThunderbirdのメールをCSVでま...
-
CSVファイルのセルに「01」と入...
-
アクセスでcsvに出力した際、頭...
-
Access2007のエキスポートについて
-
タブ区切りデータからダブルコ...
-
100万行のCSVを10万行ずつのフ...
-
Access インポート
-
csvファイルが保存すると数...
-
【CSVファイル】先頭の文字列に...
-
Accessでdatファイルのインポート
-
accessで項目内の文字を自動改...
-
sqlldrのフィールドの属性について
-
TXTで作成したファイルをDATフ...
-
Accessで小数点以下を切り捨て...
-
カンマがデータとして入ってるC...
-
Access95のエクスポートで教え...
-
SQLPLUSで結果を画面に表示しない
-
【Excel】[Expression.Error] ...
-
excelを共有ファイルにすると行...
-
共有フォルダに誰が何にアクセ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【CSVファイル】先頭の文字列に...
-
TXTで作成したファイルをDATフ...
-
アクセスでcsvに出力した際、頭...
-
Access インポート
-
100万行のCSVを10万行ずつのフ...
-
ThunderbirdのメールをCSVでま...
-
タブ区切りデータからダブルコ...
-
カンマがデータとして入ってるC...
-
Access95のエクスポートで教え...
-
アクセスがインポートできる容...
-
CSVファイルのセルに「01」と入...
-
csvファイルが保存すると数...
-
Access2007のエキスポートについて
-
accessで項目内の文字を自動改...
-
エクセルデータをテキストファ...
-
Accessでdatファイルのインポート
-
TSVのファイルをACCESSにインポ...
-
OutlookからBecky!へ
-
sqlldrのフィールドの属性について
-
Accessで小数点以下を切り捨て...
おすすめ情報