以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]学习窗口筛选,改做成查询窗口  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=88221)

--  作者:cd_tdh
--  发布时间:2016/7/29 11:02:00
--  [求助]学习窗口筛选,改做成查询窗口

老师,在学习窗口筛选时,发现只能筛选出于条件一样的结果,我要模糊查询这个代码怎么写啊?比如查询条件输入123,把有关123的客户全部筛选出来。

Dim Filter As String
With e.Form.Controls("cmbCustomer")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "客户 = \'" & .Value & "\'"
    End If
End With
If Filter > "" Then
    Tables("订单").Filter = Filter
End If

 

我这样做能实现,但是只能按照先后顺序,逐个输入条件才能查询

Dim sbxh As WinForm.ComboBox = e.Form.Controls("机构")
Dim sbxlh As WinForm.TextBox = e.Form.Controls("名称")
Dim StartDate As Date = #1/1/1900#
If e.Form.Controls("起始日期").Value <> Nothing
    StartDate = e.Form.Controls("起始日期").Value
End If
Dim EndDate As Date = #12/30/2099#
If e.Form.Controls("截止日期").Value <> Nothing
    EndDate = e.Form.Controls("截止日期").Value
End If
Tables("表A").Filter = "机构 Like \'" & sbxh.Text & "\' AND 名称 Like \'*" & sbxlh.Text & "*\' and 登记时间 >= #" & StartDate & "# And 登记时间 <= #" & EndDate & "# "

 

[此贴子已经被作者于2016/7/29 11:04:17编辑过]

--  作者:Hyphen
--  发布时间:2016/7/29 12:01:00
--  
Filter = Filter & "客户 like \'%" & .Value & "%\'"


这个意思?
Tables("表A").Filter = "(机构 Like \'" & sbxh.Text & "\' or 名称 Like \'*" & sbxlh.Text & "*\') and 登记时间 >= #" & StartDate & "# And 登记时间 <= #" & EndDate & "# "

--  作者:cd_tdh
--  发布时间:2016/7/29 12:13:00
--  
哇,谢谢老师,我弄了两小时都没弄出来。