SQLのSELECT文や定義域集合関数(DLookUp関数など)のWhere条件に用いられる文字列を生成します。
使用例
表記例 | 出力例 | 説明 |
---|---|---|
BuildCriteria("商品コード",10,"00001 Or 00002") | 商品コード="00001" Or 商品コード="00002" | テキスト型を指定した例(第2引数10)。「"」が補われます |
BuildCriteria("商品コード",3,"00001 Or 00002") | 商品コード=1 Or 商品コード=2 | 整数型を指定した例(第2引数3) |
BuildCriteria("価格",3,">=60000 And <100000") | 価格>=60000 And 価格<100000 | 数値の範囲指定を行う例 |
BuildCriteria("発売日",10,"2016/9/15 Or 平成28年9月16日") | 発売日="2016/9/15" Or 発売日="平成28年9月16日" | テキスト型を指定した例(第2引数10) |
BuildCriteria("発売日",8,"2016/9/15 Or 平成28年9月16日") | 発売日=#9/15/2016# Or 発売日=#9/16/2016# | 日付型(第2引数8)を指定した例。「#」が補われます。「月/日/年」という並びになりますが検索においては問題なく機能します |
BuildCriteria("価格",3,"Null") | 価格 Is Null | 値としてNullを指定した例。型(第2引数)に関わらず「Is Null」が補われます |
BuildCriteria("商品名",10,"S*") | 商品名 Like "S*" | 値にワイルドカード(「*」や「?」)を指定した例。「Like」が補われます |
書式
BuildCriteria(フィールド名,データ型,検索値)
データ型として指定できる値は次の通りです(全てではありません)。ただし生成される文字列が同じものについては実用上区別する必要はありません。
データ型 | 意味 |
---|---|
1 | ブール型 |
2 | バイト型 |
3 | 整数型 |
4 | 長整数型 |
5 | 通貨型 |
6 | 単精度浮動小数点型データ |
7 | 倍精度浮動小数点型データ |
8 | 日付型 |
9 | バイナリ型 |
10 | テキスト型 |
備考
単に引用符(「#」など)が補われるだけでなく、上記の日付型の例のように検索値が適宜変換されますので、検索用フォームで抽出条件式を生成するのに用いると便利です。
実際にフォーム(VBA)で用いている例としては、次のようなものが挙げられます。