質問編集履歴

1

年月度についての追記をしました。

2021/04/14 10:06

投稿

yazu-0809
yazu-0809

スコア6

test CHANGED
File without changes
test CHANGED
@@ -22,6 +22,16 @@
22
22
 
23
23
 
24
24
 
25
+ 追記:商品コードの開始と終了は解決しました。ありがとうございます。ただ年月度を入れると検索ができなくなってしまったのですが、
26
+
27
+ この場合年月度はテキスト型なので同じようにしたのでは間違いになるのでしょうか。
28
+
29
+ 会社の要望としては年月度だけでの検索もできるようにしたいし、年月度と商品コード、担当者などをいれても検索が動くようにしてほしいということなのですが、別に作ったほうが良いのでしょうか?それとも年月度はあきらめてもらうほうがいいのでしょうか。
30
+
31
+ ちなみに元となっているテーブルはCSVからデータを読み込む関係ですべてテキスト型になっています。
32
+
33
+
34
+
25
35
 
26
36
 
27
37
  ### 該当のソースコード
@@ -30,23 +40,17 @@
30
40
 
31
41
  ```AccessVBA
32
42
 
33
- Private Sub 検索_Click()
34
43
 
35
44
 
45
+ If Not IsNull(Me.開始年月度) And Not IsNull(Me.終了年月度) Then
36
46
 
37
- Dim strFilter As String
47
+ strFilter = " AND 年月度 >= '" & Me.開始年月度 & "' AND 年月度 <= '" & Me.終了年月度 & "'"
38
48
 
39
-
49
+ ElseIf Not IsNull(Me.開始年月度) Then
40
50
 
41
-
42
-
43
- If IsDate(Me.開始年月度) And IsDate(Me.終了年月度) Then
44
-
45
- strFilter = " AND 年月度 >= #" & Me.開始年月度 & "# AND 年月度 <= #" & Me.終了年月度 & "#"
51
+ strFilter = " AND 年月度 = '" & Me.開始年月度 & "'"
46
52
 
47
53
  End If
48
-
49
-
50
54
 
51
55
 
52
56
 
@@ -66,13 +70,17 @@
66
70
 
67
71
 
68
72
 
69
- If Not IsNull(Me.商品コード開始) And IsNull(Me.商品コード終了) Then
73
+ If Not IsNull(Me.商品コード開始) And Not IsNull(Me.商品コード終了) Then
70
74
 
71
- strFilter = Between Me.商品コード開始 And Me.商品コード終了
75
+ strFilter = " AND 商品コード >= '" & Me.商品コード開始 & "' AND 商品コード <= '" & Me.商品コード終了 & "'"
72
76
 
73
- End If   'ここでエラが出ます
77
+ ElseIf Not IsNull(Me.商品コド開始) Then
74
78
 
75
-
79
+ strFilter = " AND 商品コード = '" & Me.商品コード開始 & "'"
80
+
81
+ End If
82
+
83
+
76
84
 
77
85
 
78
86
 
@@ -124,4 +132,4 @@
124
132
 
125
133
  End If
126
134
 
127
- も試してみました
135
+ も試してみました←こちらの件は解決しました。