回答編集履歴

1

コード例の追記

2019/08/28 12:06

投稿

hatena19
hatena19

スコア33757

test CHANGED
@@ -15,3 +15,69 @@
15
15
  あとは、提示のコードの感じで動作すると思います。
16
16
 
17
17
  もう少し効率的な記述はありますが。
18
+
19
+
20
+
21
+ コード例
22
+
23
+ ---
24
+
25
+
26
+
27
+ **仕様**
28
+
29
+ 各テキストボックスの名前をtxt年齢、txt住まい、txt名前、txt性別 とします。
30
+
31
+ 「年齢」フィールドは数値型、他はテキスト型とします。
32
+
33
+ 年齢と性別は完全一致、住まいと名前は部分一致とします。
34
+
35
+
36
+
37
+
38
+
39
+ ```vba
40
+
41
+ Private Sub 検索ボタン_Click()
42
+
43
+ Dim WhereString As String
44
+
45
+ If Me.txt年齢 >= 0 Then
46
+
47
+ WhereString = WhereString & " AND 年齢 = " & Me.txt年齢
48
+
49
+ End If
50
+
51
+
52
+
53
+ If Me.txt住まい <> "" Then
54
+
55
+ WhereString = WhereString & " AND 住まい like '*" & Me.txt住まい & "*'"
56
+
57
+ End If
58
+
59
+
60
+
61
+ If Me.txt名前 <> "" Then
62
+
63
+ WhereString = WhereString & " AND 名前 like '*" & Me.txt名前 & "*'"
64
+
65
+ End If
66
+
67
+
68
+
69
+ If Me.txt接別 <> "" Then
70
+
71
+ WhereString = WhereString & " AND 性別 = '" & Me.性別 & "'"
72
+
73
+ End If
74
+
75
+
76
+
77
+ Me.Filter = Mid(WhereString, 6)
78
+
79
+ Me.FilterOn = (WhereString <> "")
80
+
81
+ End Sub
82
+
83
+ ```