レポートのレコードソースには、"年度登録"テーブルを設定します。
コマンドボタン「プレビュー」を配置します。このボタンのクリック時のイベントプロシージャを下記のように記述します。
Private Sub プレビュー_Click()
Dim strFilter As String
If Not IsNull(Me.年度検索) And Not IsNull(Me.年度検索2) Then
MsgBox "[指定年度]と[除く年度]を両方入力することはできません!"
Exit Sub
End If
If Not IsNull(Me.年度検索) Then
strFilter = strFilter & " AND 年度=" & Me.年度検索
End If
If Not IsNull(Me.月検索) Then
strFilter = strFilter & " AND 月=" & Me.月検索
End If
If Not IsNull(Me.年度検索2) Then
strFilter = strFilter & " AND 年度<>" & Me.年度検索2
End If
strFilter = Mid(strFilter, 6) '先頭の" AND"を削除
If DCount("*", "年度登録", strFilter) = 0 Then
MsgBox "該当するレコードはありません。"
Else
DoCmd.OpenReport "レポート名", acViewPreview, , strFilter
End If
End Sub
OpenReportの第4引数に抽出条件を設定できます。
通報 ...
早々にご回答頂きまして、ありがとうございます。
早速試してみたところ、思うように作動致しました。
今度は、文字列での絞り込みもトライしてみようと思います。
3行目の
If Not IsNull(Me.年度検索) And Not IsNull(Me.年度検索) Then
の二つ目の Me.年度検索を Me.年度検索2 に変更しました。
本当にありがとうございました。
あっ、間違ってますね。ご指摘ありがとうございます。
回答を修正しておきます。