Private Sub キャンセルボタン_Click()
Dim fmname As String '委託者名
Dim fmwork As String '作業
Dim fmsdate As String '開始日付
Dim fmedate As String '終了日付
Dim fmhdate As String '引落日
Dim fmcheck As Integer 'チェック {-1,0}のいづれかの値のみ
Dim fmtanto As String '担当者
Dim フィルタ条件 As String
Forms("検索条件")!fm委託者名.Value = Null
Forms("検索条件")!fm作業.Value = Null
Forms("検索条件")!fm開始日付.Value = Null
Forms("検索条件")!fm終了日付.Value = Null
Forms("検索条件")!fm引落日.Value = Null
Forms("検索条件")!fmチェック.Value = Null
Forms("検索条件")!fm担当者.Value = Null
Me.Filter = フィルタ条件
Me.FilterOn = False
Me.Refresh
End Sub
--------------------------------------------------
Private Sub 検索開始ボタン_Click()
'フィルタ条件が存在する場合のみ、条件を and で追加していく点が大切!(最初、全てのケースを列挙してSELECTで場合分けして処理してて、死にそうになった)
’フィルター条件の日付は#で囲む
Dim fmname As String '委託者名
Dim fmwork As String '作業
Dim fmsdate As String '開始日付
Dim fmedate As String '終了日付
Dim fmhdate As String '引落日
Dim fmcheck As Integer 'チェック {-1,0}のいづれかの値のみ
Dim fmtanto As String '担当者
Dim フィルタ条件 As String
Me.FilterOn = False
Me.Refresh
'条件として「開始日付」「終了日付」の有無
If (Not IsNull(Me.fm開始日付)) Then
fmsdate = Forms("検索条件")!fm開始日付.Value
Else
fmsdate = "2009/01/01"
End If
If (Not IsNull(Me.fm終了日付)) Then
fmedate = Forms("検索条件")!fm終了日付.Value
Else
fmedate = "2009/12/31"
End If
フィルタ条件 = "日付 between #" & fmsdate & "# and #" & fmedate & "#"
'条件として「委託者名」の有無
If (Not IsNull(Me.fm委託者名)) Then
fmname = Forms("検索条件")!fm委託者名.Value
フィルタ条件 = フィルタ条件 & " and 委託者名 = '" & fmname & "'"
End If
'条件として「作業」の有無
If (Not IsNull(Me.fm作業)) Then
fmwork = Forms("検索条件")!fm作業.Value
フィルタ条件 = フィルタ条件 & " and 作業 = '" & fmwork & "'"
End If
'条件として「引落日」の有無
If (Not IsNull(Me.fm引落日)) Then
fmhdate = Forms("検索条件")!fm引落日.Value
フィルタ条件 = フィルタ条件 & " and 引落日 = #" & fmhdate & "#"
End If
'条件として「チェック」の有無
If (Not IsNull(Me.fmチェック)) Then
fmcheck = Forms("検索条件")!fmチェック.Value
フィルタ条件 = フィルタ条件 & " and チェック = " & fmcheck
End If
'条件として「担当者」の有無
If (Not IsNull(Me.fm担当者)) Then
fmtanto = Forms("検索条件")!fm担当者.Value
フィルタ条件 = フィルタ条件 & " and 担当者 = '" & fmtanto & "'"
End If
Me.Filter = フィルタ条件
Me.FilterOn = True
End Sub
--------------------------------------------------
Private Sub 本日作業分ボタン_Click()
Call キャンセルボタン_Click
Dim fmsdate As String '開始日付
Dim fmedate As String '終了日付
Dim wdate As String '日付渡し用変数
Dim フィルタ条件 As String
Dim Path As String
fmsdate = Format(Date, "yyyy/mm/dd")
fmedate = fmsdate
Forms("検索条件")!fm開始日付.Value = fmsdate
Forms("検索条件")!fm終了日付.Value = fmedate
Me.Refresh
フィルタ条件 = "日付 between #" & fmsdate & "# and #" & fmedate & "#"
Me.Filter = フィルタ条件
Me.FilterOn = True
Me.Refresh
DoCmd.OpenForm "警告"
Forms![警告].Filter = "アラート日 = #" & fmsdate & "# "
Forms![警告].FilterOn = True
End Sub
--------------------------------------------------
2009年04月22日
この記事へのコメント
コメントを書く
コチラをクリックしてください
この記事へのトラックバック