• ベストアンサー

バッチ処理でAcess処理終了後にメッセージがでるのはなぜですか?

バッチファイルで、Access2000のマクロ「AutoExec」を起動させて処理をおこないたいのですが、 「AutoExec」の処理が終了し、Accessが終了すると、以下のメッセージボックスが表示されてしまいます。 メッセージボックスの内容 「'C\xxx.mdb'がみつかりません。名前を正しく入力したかどうかを確認してから、やり直してください。 ファイルを検索するには、「スタート」ボタンをクリックしてから、[検索]をクリックしてください。」 Access2000は、該当のディレクトリに、置いていますし、 ちゃんとAccess2000のマクロ「AutoExec」の処理は実行されています。 Access2000の処理は、正常に終了しているのに、こんなメッセージが表示されては、 意味がありません。 このAccess2000の「AutoExec」のバッチ処理は、何十個もあるバッチ処理の一部です。 バッチ処理の途中でメッセージが出るとその後自働で、行われる予定のバッチ処理が、 行われないので非常に困ってます。 どうしたらよいですか? とにかく、バッチ処理で、Access2000を起動させ、マクロ「AutoExec」を使用して処理を行いたいのです。 その間、どんなことがあっても、メッセージボックスの表示などで、処理を止めてはならないのです。 お願いします。誰か教えてください。 バッチファイル名(このバッチファイルの次に、Access2000とは、無関係のバッチファイルの処理がたくさんあります) xxx.bat バッチファイルの内容 CALL c:\yyy.mdb(又は、startc:\yyy.mdb)

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

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

試してみました。コマンドプロンプト上から CALL c:\yyy.mdb(又は、startc:\yyy.mdb) とすると 多分アクセスからのメッセージと思いますが C\yyy.mdb'がみつかりません。・・・ その後でコマンドプロンプト上でも同様のメッセージが出ます。 explorer.exe c:\yyy.mdb とするとセキュリティの警告が・・ ですので "c:\program files\・・・\access.exe" c:\yyy.mdb として Access.exeのフルパスを指定しないと無理そうです。 バッチファイル中に予期せざることが発生する場合も有るので、そのあたりも考えるとWSHの方が良いような気もいたします。 根拠はありません、悪しからず。

その他の回答 (1)

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

どこかのバッチファイルで、 start c:xxx.mdb を実行していて、実際にはxxx.mdbが存在してないのでは。 a) xxx.mdbが不要ならバッチを修正。 b) xxx.mdbが必要ならファイルを適切な場所に配置。 いずれにしろ、原因となるコードを特定するのが先決かと。