質問: クエリ実行結果0件の場合のフォーム展開中止とメッセージ表示 access初心者です。 テーブルのデータをクエリで抽出し、フォームで表示しようと考えています。 たとえば、 「テーブル1」に、「id」「氏名」「部署」「趣味」のフィールドが、 「結果表示フォーム」にも対応するレコードソースを持つボックスがあり、 「条件指定フォーム」に「部署」という名のボックスと、「マクロ1」を割り当てた「ボタン1」がある場合に、 「テーブル1」を基にした「クエリ1」で、「部署」の抽出条件に「[条件指定フォーム]![部署]」と設定し、 「マクロ1」では、「クエリ1」をフィルタにして、「フォームを開く」コマンドで「結果表示フォーム」を開きたいと考えています。 この場合、 「条件指定フォーム」の「部署」ボックスにたとえば「総務部」と入力して「ボタン1」をクリックすると、「テーブル1」中に総務部の社員がいれば「結果表示フォーム」は問題なく展開しますが、「総務部」の社員がデータ中にないときには、すべてのテキストボックスが空欄のまま「結果表示フォーム」が展開してしまいます。 そこで、 「クエリ1」実行の際、結果のレコード数が0件の場合には、「結果表示フォーム」の展開を中止してメッセージボックスを表示するような修正を「マクロ1」に追加したいと思います。 どのような条件付けをすればよいでしょうか。 どなたかよいアドバイスをお願いいたします。
回答: マクロの条件で dcount("*","クエリ1")<>0 →フォームを開く ではどうでしょう? 又は、 dcount("*","クエリ1")=0 →メッセージボックス ... →マクロの中止 →フォームを開く