回答編集履歴
3
補足追記
answer
CHANGED
@@ -42,4 +42,20 @@
|
|
42
42
|
テキスト型は条件の値を'で囲む。数値型は囲まないということです。
|
43
43
|
|
44
44
|
この方がシンプルに記述できます。
|
45
|
-
上記の書き方を理解して、フィールドのデータ型に合わせて書き換えて下さい。
|
45
|
+
上記の書き方を理解して、フィールドのデータ型に合わせて書き換えて下さい。
|
46
|
+
|
47
|
+
補足
|
48
|
+
---
|
49
|
+
今回の質問のようなシンプルな条件の場合はBuildCriteriaを使わずに記述した方かすっきりします。
|
50
|
+
BuildCriteriaの使いどころとしては、例えばユーザーに下記のような複雑な条件を許可するようなときに有効です。
|
51
|
+
```vba
|
52
|
+
strKey = "*あいう*"
|
53
|
+
strFilter = BuildCriteria("テキストフィールド", dbText, strKey)
|
54
|
+
Debug.Print strFilter ' "テキストフィールド Like '*あいう*'"
|
55
|
+
|
56
|
+
strKey = "あ or い or う"
|
57
|
+
strFilter = BuildCriteria("テキストフィールド", dbText, strKey)
|
58
|
+
Debug.Print strFilter ' "テキストフィールド = 'あ' OR テキストフィールド = 'い' OR テキストフィールド = 'う'"
|
59
|
+
```
|
60
|
+
|
61
|
+
クエリの抽出条件欄に式を記述した時に生成されるSQLと同じような変換をしてくれます。
|
2
誤字修正
answer
CHANGED
@@ -29,7 +29,7 @@
|
|
29
29
|
---
|
30
30
|
フィールドのデータ型で条件式がかわってきます。
|
31
31
|
今回の場合は BuildCriteria を使わなくてもシンプルに記述できます。
|
32
|
-
その方かコードが理解しやすい
|
32
|
+
その方かコードが理解しやすいと思います。
|
33
33
|
|
34
34
|
対象フィールドがテキスト型の場合
|
35
35
|
```vba
|
@@ -39,5 +39,7 @@
|
|
39
39
|
```vba
|
40
40
|
strFilter = " AND フィールド名=" & Me.コントロール名
|
41
41
|
```
|
42
|
+
テキスト型は条件の値を'で囲む。数値型は囲まないということです。
|
43
|
+
|
42
44
|
この方がシンプルに記述できます。
|
43
45
|
上記の書き方を理解して、フィールドのデータ型に合わせて書き換えて下さい。
|
1
コード追記
answer
CHANGED
@@ -1,14 +1,15 @@
|
|
1
1
|
「フィールド事務員IDはテキスト型」ならば、
|
2
2
|
```vba
|
3
|
-
BuildCriteria("
|
3
|
+
strFilter = " AND " & BuildCriteria("担当事務員ID", _
|
4
|
-
dbLong, Me.
|
4
|
+
dbLong, Me.cmd事務員ID)
|
5
5
|
```
|
6
6
|
は、
|
7
7
|
```vba
|
8
|
-
BuildCriteria("
|
8
|
+
strFilter = " AND " & BuildCriteria("担当事務員ID", _
|
9
|
-
dbText, Me.
|
9
|
+
dbText, Me.cmd事務員ID)
|
10
10
|
```
|
11
|
-
にしてください。
|
11
|
+
にしてください。第2引数は、テキスト型は dbText 、数値型は dbLong を指定します。
|
12
|
+
|
12
13
|
イミディエイトウィンドウで下記のように確認してみると違いが分かります。
|
13
14
|
```text
|
14
15
|
?BuildCriteria("案件ID", dbText, 111)
|
@@ -22,4 +23,21 @@
|
|
22
23
|
|
23
24
|
> チェックボックスに✓を入れた時だけ条件とし,空の時は条件に含みたくありません。
|
24
25
|
|
25
|
-
これはsaziさんの回答でOK。
|
26
|
+
これはsaziさんの回答でOK。
|
27
|
+
|
28
|
+
追記
|
29
|
+
---
|
30
|
+
フィールドのデータ型で条件式がかわってきます。
|
31
|
+
今回の場合は BuildCriteria を使わなくてもシンプルに記述できます。
|
32
|
+
その方かコードが理解しやすいしと思います。
|
33
|
+
|
34
|
+
対象フィールドがテキスト型の場合
|
35
|
+
```vba
|
36
|
+
strFilter = " AND フィールド名='" & Me.コントロール名 & "'"
|
37
|
+
```
|
38
|
+
対象フィールドが数値型の場合
|
39
|
+
```vba
|
40
|
+
strFilter = " AND フィールド名=" & Me.コントロール名
|
41
|
+
```
|
42
|
+
この方がシンプルに記述できます。
|
43
|
+
上記の書き方を理解して、フィールドのデータ型に合わせて書き換えて下さい。
|