プロが教える店舗&オフィスのセキュリティ対策術

今日は。いつも助けて頂いております。
Accessの選択クエリで、必要なデータを抽出し、
それを別のフォルダに、新規のmdbファイルとして
書き出したいと思っています。

たぶん、作成した選択クエリを、エクスポートするときに保存形式と保存する場所を指定すれば手動でできるのだと思いますが、
これを自動化する方法はありますか?

A 回答 (4件)

目的がよく分からないのですが。


バックアップでしょうか? それとも他のシステムから特定のデータだけ取り扱いたいとかでしょうか。

クエリというものの実態はSQL文でしかありません。それ自体にデータが入っているわけではなく、どこそこのテーブルからあのフィールドとこのフィールドをもってきて...あれとこれをこうしなさい。ということが書かれているだけです。
ですのでそのクエリだけエクスポートをしても意味がありません。そのクエリが参照しているテーブル・クエリもまた同様にエクスポートする必要があります。
ということですので、複雑にからみあったDBから関係するテーブル・クエリを選択・抜粋してMDBファイルを新規に作るは既存のMDBファイル毎複製した方がはやいです。

質問者さんのようなことをする場合、通常はクエリを使って抽出したデータそのものをCSVファイルとして書き出すという方法が一般的かと思います。CSVであれば汎用性・信頼性も高いので取り扱いが楽です。

まぁどちらにせよこれらの方法はマクロでは難しいのでVBAでコードを書く必要ですが。一から勉強するというレベルでも十分に可能な範囲ではあります。

この回答への補足

丁寧に教えて頂きありがとうございます。

目的は、
>それとも他のシステムから特定のデータだけ取り扱い
です。

クエリをつかって抽出したデータを、CSVで書き出す、というのはよくやっていました。
その手順を自動化するのは、
VBAになるのでしょうか。

補足日時:2004/07/02 13:10
    • good
    • 0

クエリの概念は#1さんのおっしゃるとおりですし、「データをmdbファイルとして書き出す」というのも、厳密には「データをmdbファイル内のテーブルとして書き出す」ですね。

まあ、言葉が足りなかっただけで、理解はされているとは思いますが。。。気に障ったらごめんなさい(>_<)

その選択クエリをデザインビューで開く
上半分のあいてるところで右クリック
クエリの種類→テーブル作成
テーブル名=任意(AAA)
「他のデータベース」を選択
ファイル名=任意(C:\BBB.mdb など)
クエリを保存し、実行すると、
C:\BBB.mdb内にAAAというテーブルが作成されます。
ただし、空の「C:\BBB.mdb」を事前に作成しておいてください。

頑張ってくださいヽ(^。^)ノ
    • good
    • 0
この回答へのお礼

ありがとうございます。
やってみます。

お礼日時:2004/07/02 13:15

TransferDatabase メソッドでも、クエリをテーブルとして


インポート Or エクスポートすることができたと思います。
ただし、こちらも事前にファイルの作成は必要だったと思いますけど。。
    • good
    • 0
この回答へのお礼

ありがとうございます。
TransferDatabase メソッド
・・・すみません、まだVBAそんなに詳しくないので。
何か解説になるようなURLをご存じですか?

お礼日時:2004/07/02 19:03

> 何か解説になるようなURLをご存じですか?



まず、第一に見るところはヘルプです。
それを確認して、不明な点があれば、再度質問してください。
    • good
    • 0
この回答へのお礼

お礼が遅くなり、大変失礼しました。
勉強します!

お礼日時:2004/07/09 16:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!