• 締切済み

ACCESS(アクセス) マクロを使った複数条件検索

accessを使った履歴DBを作っているのですが、本格的にVBをするつもりは毛頭なく、極力マクロを駆使して、頑張ってきました。 現在、クエリビルダーでSQL文をそのまま書いて、こちらをフィルタ名に指定して、複数条件検索マクロ(フォームを開く)を組んでいるのですが、この方法だと条件に合致するものがない場合でも、フォームを開くというマクロを実行してしまいます(当たり前なのですが)。検索結果が0件の場合にはエラーメッセージを出すように本当はしたいです。 VBに切り替えれば間違いなく出来るのは想像できるのですが、VBは全くやる気がないので、できることならマクロで何とかしたいのですが・・・。やっぱり無理でしょうか。

みんなの回答

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

久々の落穂拾いモードでやってまいりました。 …OK,VBAは金輪際使わないってことで。 フォームを開いた後、条件が [Forms]![フォーム名].[RecordsetClone].[RecordCount]=0 で、アクションがメッセージボックス。 これをもう一行コピーして、アクションがフォームを閉じる。 です。 VBAで書く場合とほとんど変わりありませんね。 フォームを開く前にってことでしたら、…マクロだとちょっとややこしくなるんで、迂回策が良さそうですね。 フォームを開くときに、ウインドウモードを非表示にしてやれば良いでしょう。 で、上の条件に合致しない場合には更にフォームの表示をしてやればいいかと。

関連するQ&A