Requery マクロ アクション

Access データベースで "Requery/再クエリ" マクロ アクションを使用すると、コントロールのソースを再クエリすることで、アクティブなオブジェクト上の指定したコントロールのデータを更新することができます。コントロールが指定されていない場合、オブジェクト自体のソースが再クエリされます。このアクションを使用し、アクティブなオブジェクトまたはそのコントロールの 1 つに最新のデータが表示されるようにします。

設定

"Requery/再クエリ" マクロ アクションには次の引数があります。

アクションの引数

説明

コントロール名

更新するコントロールの名前です。マクロ デザイン ウィンドウの [コントロール名] ボックスにコントロール名を入力します。(Forms!フォーム名!コントロール名) 完全修飾識別子ではなく、コントロールの名前だけを使用してください。この引数を空にすると、アクティブなオブジェクトのソースが再クエリされます。アクティブなオブジェクトがデータシートか、クエリ結果セットの場合、この引数を空にする必要があります。

解説

"Requery/再クエリ" マクロ アクションは、次のいずれかを実行します。

  • コントロールまたはオブジェクトが基礎にするクエリを再実行します。

  • 新しいレコードや変更されたレコードを表示し、コントロールまたはオブジェクトが基礎にするテーブルから削除済みのレコードを削除します。

注: "Requery/再クエリ" マクロ アクションは、レコード ポインターの位置に影響を与えません。

クエリまたはテーブルを基礎とするコントロールに含まれるもの:

  • リスト ボックスとコンボ ボックス。

  • サブフォーム コントロール。

  • OLE オブジェクト (グラフなど)。

  • (DSum のような) 定義域集合関数を含むコントロール。

指定したコントロールがクエリまたはテーブルを基礎としていない場合、このアクションでは、コントロールの再計算が強制されます。

"Control Name/コントロール名" 引数を空にした場合、"Requery/再クエリ" アクションは、オブジェクトにフォーカスがあるときに SHIFT+F9 を押した場合と同じ操作になります。サブフォーム コントロールにフォーカスがある場合、このアクションでは、サブフォームのソースのみが再クエリされます (SHIFT+F9 を押した場合と同じ)。

注: "Requery/再クエリ" マクロ アクションは、コントロールまたはオブジェクトのソースを再クエリします。対照的に、"RepaintObject/オブジェクトの再描画" マクロ アクションは、指定したオブジェクトのコントロールを再描画しますが、データベースを再クエリせず、新しいレコードも表示しません。"ShowAllRecords/全レコードの表示" マクロ アクションはアクティブなオブジェクトを再クエリするだけでなく、適用されているフィルターを削除します。フィルターの削除は、"Requery/再クエリ" マクロ アクションでは行われません。

アクティブなオブジェクトにないコントロールを再クエリする場合、"Requery/再クエリ" マクロ アクションや DoCmd オブジェクトの "Requery/再クエリ" メソッドではなく、Visual Basic for Applications (VBA) モジュールの "Requery/再クエリ" メソッドを使用する必要があります。VBA の "Requery/再クエリ" メソッドは、"Requery/再クエリ" マクロ アクションや DoCmd.Requery メソッドより高速になります。また、"Requery/再クエリ" マクロ アクションまたは DoCmd.Requery メソッドを使用すると、Access はクエリを閉じ、データベースから再度読み込みますが、"Requery/再クエリ" メソッドを使用すると、Access は閉じて再度読み込むことなくクエリを再実行します。ActiveX Data Object (ADO) "Requery/再クエリ" メソッドは、Access "Requery/再クエリ" メソッドと同じように機能します。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×