|
> SELECT 抽出フォーム用.[日付]
> , 抽出フォーム用.[部 門]
> , 抽出フォーム用.Category
> FROM 抽出フォーム用
> WHERE (((抽出フォーム用.日付) Between [Forms]![検索用]![日付From]
> And [Forms]![検索用]![日付To])
> AND ((抽出フォーム用.[部 門]) Like [Forms]![検索用]![部門] & "*")
> AND ((抽出フォーム用.Category) Like [Forms]![検索用]![カテゴリ1] & "*"));
このクエリの抽出条件をすべてはずしてください。
で、コマンドボタンを作成して、そのクリック時イベントで
Dim lngIdx As Long
Dim strWhere As String
If Not IsNull(Me!日付From) Then
strWhere = strWhere & " AND 日付 >= #" & Me!日付From & "#"
End If
If Not IsNull(Me!日付To) Then
strWhere = strWhere & " AND 日付 <= #" & Me!日付To & "#"
End If
If Not IsNull(Me!部門) Then
strWhere = strWhere & " AND 部門 Like '" & Me!部門 & "*'"
End If
For lngIdx = 1 To 6
If Not IsNull(Me("カテゴリ" & lngIdx)) Then
strWhere = strWhere & " OR Category" & lngIdx & " Like '" _
& Me("カテゴリ" & lngIdx) & "*'"
End If
Next lngIdx
If Len(strWhere) > 0 Then
Me.Filter = Mid(strWhere, 5)
Me.FilterOn = True
End If
のように記述してみてください。
|
|