電子書籍の厳選無料作品が豊富!

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

A 回答 (1件)

久々の落穂拾いモードでやってまいりました。




…OK,VBAは金輪際使わないってことで。

フォームを開いた後、条件が
[Forms]![フォーム名].[RecordsetClone].[RecordCount]=0
で、アクションがメッセージボックス。

これをもう一行コピーして、アクションがフォームを閉じる。
です。

VBAで書く場合とほとんど変わりありませんね。

フォームを開く前にってことでしたら、…マクロだとちょっとややこしくなるんで、迂回策が良さそうですね。
フォームを開くときに、ウインドウモードを非表示にしてやれば良いでしょう。
で、上の条件に合致しない場合には更にフォームの表示をしてやればいいかと。
    • good
    • 0

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