【问题标题】:Adding Name to Date Range Search. MS Access VBA将名称添加到日期范围搜索。微软访问 VBA
【发布时间】:2018-09-05 12:31:55
【问题描述】:

因此,我在 MS Access 中为工作创建了一个缺陷数据库,并且我正在使用搜索表单来查找特定日期之间的特定员工缺陷。我已经使用按钮进行日期范围搜索,但我还没有弄清楚如何将我的 EmployeeNameBox 添加到过滤器结果中。这就是我所拥有的。

Private Sub Searchbtn_Click()
    Me.Filter = "[DayMonthYear] BETWEEN #" & Me.Date1Filt & "# AND #" & Me.Date2Filt & "#"
    Me.FilterOn = True
End Sub

非常适合我想要的日期范围,但我还需要添加员工姓名。任何帮助将不胜感激。

【问题讨论】:

    标签: database ms-access vba ms-access-2016


    【解决方案1】:

    假设您的EmployeeNameBox 在搜索时将始终被填充,您只需将其添加到您的过滤器中。我发现将过滤器存储在变量中更容易,然后在最后将其分配给Me.Filter。所以像:

    Private Sub Searchbtn_Click()
        Dim sFilter as String
    
        sFilter = _
                "[DayMonthYear] BETWEEN " & _
                    "#" & Me.Date1Filt & "# AND " & _
                    "#" & Me.Date2Filt & "# " & _
                " AND [EmployeeName] = """ & Me.EmployeeNameBox & """"
    
        Me.Filter = sFilter
        Me.FilterOn = True
    End Sub
    

    【讨论】:

    • 我遇到的唯一问题是它现在弹出一个消息框询问员工姓名。员工姓名框是名称的下拉列表,也许这就是问题所在?
    • 是的,您必须调整 sFilter 的最后一部分以反映实际的员工字段名称。此外,如果员工字段是数字而不是文本,则需要相应地进行调整。
    • 太棒了,非常感谢。其实是我的错。我拼错了字段名称,第一次是正确的。 :)
    猜你喜欢
    • 1970-01-01
    • 2017-04-20
    • 1970-01-01
    • 1970-01-01
    • 2017-09-09
    • 2015-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多