有没有一种方法可以基于文本框过滤报告,该报告将排除文本框中的内容?

时间:2019-04-30 15:57:24

标签: ms-access access-vba

我想通过排除文本框中的任何单词来过滤报告。我可以在框架中执行此操作,但似乎无法在文本框中单独执行此操作。之所以这样做,是因为理想情况下,我希望有3个带有选项按钮的框架,这些按钮可以让我根据文本框中的内容来过滤报告。

例如,三个选项按钮与将过滤办公室标题的文本框关联。三个选项按钮以,包含和排除开头。效果很好,但问题是我无法合并多个框架。我想过滤一下类似的内容,例如“始于董事,但不包括资深人士”。

If Nz(Me.txtOffice, "") <> "" Then
   If Me.Frame19 = 1 Then
       stroffice = stroffice & "OFFICETITLE Like '" & Me.txtOffice & "*' AND "
       End If
    If Me.Frame19 = 2 = True Then
       stroffice = stroffice & "OFFICETITLE Like '*" & Me.txtOffice & "*' AND "
       End If
    If Me.Frame19 = 3 = True Then
       stroffice = stroffice & "OFFICETITLE Not Like '*" & Me.txtOffice & "*' AND "
       End If

是否可以通过排除文本框中的单词来使多个框架过滤报告,或者是否可以通过文本框过滤来过滤文本?

1 个答案:

答案 0 :(得分:0)

我不认为

If Me.Frame19 = 2 = True Then

If Me.Frame19 = 3 = True Then

将永远评估为true,我相信VBA首先会评估3 = true(这永远是false),然后再将布尔类型与对象类型进行比较。

尝试:

If Me.Frame19.value = 1 Then
....
If Me.Frame19.value = 2 Then
...
If Me.Frame19.value = 3 Then

您应始终指定所使用对象的哪个属性,即.value或.text或.caption等。