0

Access 2007 のフォーム フィルターに少し問題があります。いくつかのフォームでリストビューを使用していますが、ユーザーはそこでフィルター処理できる必要があります。

テスト目的で、1 つのテーブルのみに基づくクエリを作成しました。最初のフィルターを設定する場合は、次のようになります。

通常のフィルター

値を選択し、別のフィルターを (明らかに別のフィールドに) 設定したい場合、選択できる値がありません。

2次フィルター

これは、クエリを使用した場合にのみ発生するようです (1 つのテーブルまたは複数のリンクされたテーブルに基づいて、すべてのフィールドを使用するか、いくつかのフィールドを使用するかは関係ありません)。もちろん、数値フィルターを使用して手動で値を入力することもできます。

別のデータベースがあり、クエリでもテーブルでも、いつでもどこでもフィルターを使用できます。毎回選択できる値のリストがあります。これは、どこかで何かを台無しにしたことを意味しますが、どこにあるのかまったくわかりません。

Access 2007 (FE/BE) を使用しています。詳細が必要な場合は、お問い合わせください。どこから始めればよいかアドバイスをいただければ幸いです。

4

3 に答える 3

0

さて、しばらく遊んだ後、私は問題が何であるかを理解しました。

フォーム レコードソースはクエリである必要があります。SQL コードや "select * from query" はなく、クエリの名前だけです。それ以外は、フィルターの使用が制限されているという事実につながります。これがバグなのか、それとも何か理由があるのか​​はわかりませんが、少なくとも私にとっては、access 2007 ではこのように動作します。

「select * from qDeliveries where location = 1」のようなレコードソースにつながるクエリに条件を動的に追加する前に。これを実現するために、SQL コードを使用する代わりに、フォーム レコードソースである一時クエリを作成するだけです。

これが誰にも役立つことを願っています... :)

于 2012-06-08T13:31:34.397 に答える