我有一个用于my form的过滤器,可以在其中选择一个月-然后显示与该月有关的所有数据。 翻译: Datenauswahl =选择月份
我的问题是,在90%的时间内,用户希望在当月工作,而不希望查看过去的数据。 每当用户在导航表单上切换选项卡时,过滤器就会重置。
已尝试过我的组合框的默认值:Format(Datum();"mm")
结果:Current month input: Yes | Filter: No。因此,必须有一种可能性,即在加载默认值之后,每次夹住导航选项卡或“加载时”,表单都会检查组合框的值并对其进行过滤。
在我的表单上,我激活了加载时过滤器。
表单本身的过滤器是:组合框的Format([tbl_taetigkeitserfassung.TaetigkeitsDatum], 'mm') = '11'
-> bc。像Format([tbl_taetigkeitserfassung.TaetigkeitsDatum], 'mm') = Format(Datum();'mm')
这样的值不起作用
我希望能有一些帮助或想法来改善我的用户体验
BTW:组合框的代码,如果需要的话:
Private Sub Kombinationsfeld479_AfterUpdate()
If Me.Kombinationsfeld479 = "Alle" Then
Me.FilterOn = False
ElseIf Not IsNull(Me.Kombinationsfeld479) Then
Me.Filter = "Format([tbl_taetigkeitserfassung.TaetigkeitsDatum], 'mm')='" & Me.Kombinationsfeld479 & "'"
Me.FilterOn = True
End If
结束子
答案 0 :(得分:0)
好吧,经过一番测试,我可以说,以下表单属性组合在这里可以正常工作。表单在打开时会自动应用过滤器。
Filter On Load
:Yes
Filter
:Format([TaetigkeitsDatum],"mm")=Format(Date(),"mm")
因此,在这种情况下,tbl_taetigkeitserfassung.
似乎是错误的,应将其删除。还要像在我的示例中一样,用;
替换,
。
答案 1 :(得分:0)
首先,您的数据库将不会拥有超过一年的数据量吗?拥有一年以上的数据后,当前的过滤过程将停止工作。使用“ yyyy-mm”日期格式来说明这一点。
要使过滤工作正常进行,您必须使用Me.Requery跟踪过滤器中的每个更改(甚至启用或禁用它),以便表单根据新的过滤器进行更新。