回答編集履歴
3
補足追記
test
CHANGED
@@ -87,3 +87,35 @@
|
|
87
87
|
この方がシンプルに記述できます。
|
88
88
|
|
89
89
|
上記の書き方を理解して、フィールドのデータ型に合わせて書き換えて下さい。
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
補足
|
94
|
+
|
95
|
+
---
|
96
|
+
|
97
|
+
今回の質問のようなシンプルな条件の場合はBuildCriteriaを使わずに記述した方かすっきりします。
|
98
|
+
|
99
|
+
BuildCriteriaの使いどころとしては、例えばユーザーに下記のような複雑な条件を許可するようなときに有効です。
|
100
|
+
|
101
|
+
```vba
|
102
|
+
|
103
|
+
strKey = "*あいう*"
|
104
|
+
|
105
|
+
strFilter = BuildCriteria("テキストフィールド", dbText, strKey)
|
106
|
+
|
107
|
+
Debug.Print strFilter ' "テキストフィールド Like '*あいう*'"
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
strKey = "あ or い or う"
|
112
|
+
|
113
|
+
strFilter = BuildCriteria("テキストフィールド", dbText, strKey)
|
114
|
+
|
115
|
+
Debug.Print strFilter ' "テキストフィールド = 'あ' OR テキストフィールド = 'い' OR テキストフィールド = 'う'"
|
116
|
+
|
117
|
+
```
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
クエリの抽出条件欄に式を記述した時に生成されるSQLと同じような変換をしてくれます。
|
2
誤字修正
test
CHANGED
@@ -60,7 +60,7 @@
|
|
60
60
|
|
61
61
|
今回の場合は BuildCriteria を使わなくてもシンプルに記述できます。
|
62
62
|
|
63
|
-
その方かコードが理解しやすい
|
63
|
+
その方かコードが理解しやすいと思います。
|
64
64
|
|
65
65
|
|
66
66
|
|
@@ -80,6 +80,10 @@
|
|
80
80
|
|
81
81
|
```
|
82
82
|
|
83
|
+
テキスト型は条件の値を'で囲む。数値型は囲まないということです。
|
84
|
+
|
85
|
+
|
86
|
+
|
83
87
|
この方がシンプルに記述できます。
|
84
88
|
|
85
89
|
上記の書き方を理解して、フィールドのデータ型に合わせて書き換えて下さい。
|
1
コード追記
test
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
```vba
|
4
4
|
|
5
|
-
BuildCriteria("
|
5
|
+
strFilter = " AND " & BuildCriteria("担当事務員ID", _
|
6
6
|
|
7
|
-
dbLong, Me.
|
7
|
+
dbLong, Me.cmd事務員ID)
|
8
8
|
|
9
9
|
```
|
10
10
|
|
@@ -12,13 +12,15 @@
|
|
12
12
|
|
13
13
|
```vba
|
14
14
|
|
15
|
-
BuildCriteria("
|
15
|
+
strFilter = " AND " & BuildCriteria("担当事務員ID", _
|
16
16
|
|
17
|
-
dbText, Me.
|
17
|
+
dbText, Me.cmd事務員ID)
|
18
18
|
|
19
19
|
```
|
20
20
|
|
21
|
-
にしてください。
|
21
|
+
にしてください。第2引数は、テキスト型は dbText 、数値型は dbLong を指定します。
|
22
|
+
|
23
|
+
|
22
24
|
|
23
25
|
イミディエイトウィンドウで下記のように確認してみると違いが分かります。
|
24
26
|
|
@@ -47,3 +49,37 @@
|
|
47
49
|
|
48
50
|
|
49
51
|
これはsaziさんの回答でOK。
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
追記
|
56
|
+
|
57
|
+
---
|
58
|
+
|
59
|
+
フィールドのデータ型で条件式がかわってきます。
|
60
|
+
|
61
|
+
今回の場合は BuildCriteria を使わなくてもシンプルに記述できます。
|
62
|
+
|
63
|
+
その方かコードが理解しやすいしと思います。
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
対象フィールドがテキスト型の場合
|
68
|
+
|
69
|
+
```vba
|
70
|
+
|
71
|
+
strFilter = " AND フィールド名='" & Me.コントロール名 & "'"
|
72
|
+
|
73
|
+
```
|
74
|
+
|
75
|
+
対象フィールドが数値型の場合
|
76
|
+
|
77
|
+
```vba
|
78
|
+
|
79
|
+
strFilter = " AND フィールド名=" & Me.コントロール名
|
80
|
+
|
81
|
+
```
|
82
|
+
|
83
|
+
この方がシンプルに記述できます。
|
84
|
+
|
85
|
+
上記の書き方を理解して、フィールドのデータ型に合わせて書き換えて下さい。
|