質問: access97 → access2002 最近会社でaccess97からaccess2002へ乗り換えた(パソコンもosも変更)のですが、ファイルを変換(2000形式に)してから、不具合がおきています。 あるデータベースからデータを抽出する作業なのですが、 [a]・[b]二つのテーブルからテーブル[c]を作成する[テーブル作成クエリ]があり、これで作成した[c]をもとにクエリ[d]を実行し、excelに[d]をエクスポートするという形になっています。 [テーブル作成クエリ]を手動で実行すると正常にテーブルが作成されるのですが、 マクロで実行するとうまくいきません。 マクロは メッセージの設定 ・・・いいえ クエリを開く ・・・テーブル作成クエリを実行 ワークシート変換 ・・・[d]をexcelのワークシートにエクスポート メッセージボックス・・・"excelへの書き出しを終了しました" となっています。 具体的には、テーブル作成クエリを実行するときには、 集計開始日と終了日をパラメータとして入力する必要があり、 作成されたテーブル[c]には入力した開始日と終了日が書き込まれます。 [d]のクエリを実行する際には[c]の開始日と終了日が抽出条件となります。 手動で[テーブル作成クエリ]を実行したときには [c]に開始日と終了日が書き込まれているのですが、 マクロで実行したときには、[c]にこの開始日と終了日が書き込まれないため、 結果的にフィールド名だけが入力されたデータの全くないexcelファイルが作成されます。 ちなみにマクロで実行する場合は、あらかじめ日付範囲を入力するフォームに開始日と終了日を入力してから実行します。 長々と書いてしまいましたが、これでおわかりいただけるでしょうか? わかりにくければまた補足いたしますので、 マクロで実行したときに正常に動作するようにするにはどうすればいいのか なにか解決策がありましたら教えてください。
回答: >マクロで実行したときには、[c]にこの開始日と終了日が書き込まれない ここが問題なのでしょうか? access97では、これはうまく行っていたがaccess2002にするとダメというわけですね。 もしよかったら、問題のテーブル作成クエリのsql内容を、access97のものと、access2002のものを比べてみて下さい。 もし違っていたら、変換プログラムのバグでしょうし、同じなら他に原因があると思います。 その場合は、可能な範囲でsqlを補足して下さい。