2012-04-23 27 views
0

この検索クエリの式は結果を示していません。ミリ秒単位での表現

codeおよびcode2は、検索フォームのコンボボックスです。CS_Codeは表の列です。

WHERE ([CS_Code]=([Forms]![Search Form]![code] 
     Or [CS_Code]=[Forms]![Search Form]![code2]) 
Or ([Forms]![Search Form]![code] Is Null 
     Or [Forms]![Search Form]![code2] Is Null) 

答えて

2

に等しいときに、テーブルからエントリ(検索結果)を取得しようとしています

[CS_Code]=([Forms]![Search Form]![code] Or 
[Forms]![Search Form]![code2]) Or 
([Forms]![Search Form]![code] Is Null Or 
    [Forms]![Search Form]![code2] Is Null) 

IsNull関数:

WHERE IsNull(([Forms]![Search Form]![code],[CS_Code]) = [CS_Code] 

と同様であり、他のフィールドについても同様である。コンボボックスがnullの場合、これは常にテーブルフィールドの値を返します。

複数のコンボボックスでこれを行っている場合は、元に戻って、何をしようとしているのかを見てみましょう。 1つの可能性は、フォーム上のすべてのコンボボックスをループするVBAルーチンを記述することです。

0

あなたが使用して、これを短縮することができます:私はCS_codeあなたは比較を繰り返す必要がありcodeまたはcode2

関連する問題