私はAccess2003を使用しており、ユーザーがさまざまなフィルターから選択できるフォームを持っています。VBAを使用して、それらのフィルターに基づいてサブフォームのレコードセットを更新します(VBAでSQLステートメントを生成します)。このサブフォームには重複するクライアントIDが含まれている可能性があるため、クライアントIDの一意のリストを取得しようとしています。
サブフォームのソースSQLがある場合、VBAを使用して一意のクライアントIDをクエリする簡単な方法はありますか?私はこれらのオプションについて考えました:
- すべてのIDを一時テーブルに書き込み、そのテーブルにクエリを実行します(必要以上の作業/リソースのようです)
- どういうわけか、VBAのレコードセットオブジェクトにクエリを適用します(これは可能ですか?)。レコードセットオブジェクトをSQLクエリと同じに設定してから、を実行しようとしましたが
SELECT DISTINCT client_id FROM <the recordset object>
、これが可能であると信じるような情報が見つかりません。 - 元のクエリに基づいて新しいSQLクエリを生成します(
SELECT DISTINCT client_id FROM ('original select query text here')
うまくいくことを期待していましたが、FROMステートメントで構文エラーが発生しました