回答編集履歴

1

サンプルコード追記

2023/06/06 07:27

投稿

hatena19
hatena19

スコア33757

test CHANGED
@@ -12,4 +12,28 @@
12
12
  ```
13
13
  抽出条件の生成は提示のコードでうまくできていますので、とりあえずは、このコードを最後に追加すれば絞り込みができるはずです。
14
14
 
15
+ ---
16
+ ちなみに、自分が書くなら下記のようなコードになります。
15
17
 
18
+ ```vba
19
+ Private Sub 検索_Click()
20
+ Dim filter_txt As String
21
+
22
+ If Me!商品名から検索 <> "" Then
23
+ filter_txt = " and 商品名 like '*" & Me!商品名から検索 & "*'"
24
+ End If
25
+
26
+ If Me!メーカー名から検索 <> "" Then
27
+ filter_txt = filter_txt & " and メーカー名 like '*" & Me!メーカー名から検索 & "*'"
28
+ End If
29
+
30
+ Me.Filter = Mid(filter_txt, 6) '先頭の余分な" and "を削除してFilterプロパティに代入
31
+
32
+ If filter_txt = "" Then
33
+ Me.FilterOn = False 'フィルター解除
34
+ Else
35
+ Me.FilterOn = True 'フィルター適用
36
+ End If
37
+
38
+ End Sub
39
+ ```