MS Access 过滤日期导致错误 3075
MS Access filtering for date causes Error 3075
我有一个名为 DateSelector
的文本字段,格式为 短日期 ,还有一个包含条目列表的子表单,其中一列名为 ControlDate
也包含格式为 短日期 的值。
我想要的:
如果您更改 DateSelector
的值,它应该将列 ControlDate
过滤到现在和 DateSelector
的值之间,或者至少低于 DateSelector
的值。
这是我的代码:
Private Sub DateSelector_AfterUpdate()
On Error GoTo Proc_Error
If Me.DateSelector.Value = "" Then
Me.ListView.Form.filter = ""
Me.ListView.Form.FilterOn = False
Else
MsgBox (Me.DateSelector.Value)
'This is a Check, if the Value is correct.
Me.ListView.Form.filter = "ControlDate >=" & Me.DateSelector.Value
Me.ListView.Form.FilterOn = True
End If
Proc_Exit:
Exit Sub
Proc_Error:
MsgBox "Error " & Err.Number & " when creating Filter:" & vbCrLf & Err.Description
Resume Proc_Exit
End Sub
抛出的错误是 3075: Syntax Error
。 MsgBox
显示正确的日期,其中错误消息显示缺少最后一位数字的日期(例如:05.12.2018 --> 05.12.201),我完全不知道为什么。
感谢您的回答,感谢您的阅读,
_Ninsa
您的过滤器将最终为:
"ControlDate >= 01.12.2018"
Access 无法读取。因此,应用日期值的字符串表达式的正确格式:
"ControlDate >= #" & Format(Me!DateSelector.Value, "yyyy\/mm\/dd") & "#"
我有一个名为 DateSelector
的文本字段,格式为 短日期 ,还有一个包含条目列表的子表单,其中一列名为 ControlDate
也包含格式为 短日期 的值。
我想要的:
如果您更改 DateSelector
的值,它应该将列 ControlDate
过滤到现在和 DateSelector
的值之间,或者至少低于 DateSelector
的值。
这是我的代码:
Private Sub DateSelector_AfterUpdate()
On Error GoTo Proc_Error
If Me.DateSelector.Value = "" Then
Me.ListView.Form.filter = ""
Me.ListView.Form.FilterOn = False
Else
MsgBox (Me.DateSelector.Value)
'This is a Check, if the Value is correct.
Me.ListView.Form.filter = "ControlDate >=" & Me.DateSelector.Value
Me.ListView.Form.FilterOn = True
End If
Proc_Exit:
Exit Sub
Proc_Error:
MsgBox "Error " & Err.Number & " when creating Filter:" & vbCrLf & Err.Description
Resume Proc_Exit
End Sub
抛出的错误是 3075: Syntax Error
。 MsgBox
显示正确的日期,其中错误消息显示缺少最后一位数字的日期(例如:05.12.2018 --> 05.12.201),我完全不知道为什么。
感谢您的回答,感谢您的阅读,
_Ninsa
您的过滤器将最终为:
"ControlDate >= 01.12.2018"
Access 无法读取。因此,应用日期值的字符串表达式的正确格式:
"ControlDate >= #" & Format(Me!DateSelector.Value, "yyyy\/mm\/dd") & "#"