以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  多重模糊筛选  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=54476)

--  作者:asionwong
--  发布时间:2014/7/29 11:09:00
--  多重模糊筛选


图片点击可在新窗口打开查看此主题相关图片如下:截图00.jpg
图片点击可在新窗口打开查看

右上角的输入框为需要模糊筛选的条件输入,希望窗口1_table1能根据输入框内输入的模糊内容进行筛选,每次筛选都是在上一个框内输入的条件模糊筛选的基础之上再次进行模糊筛选。请教怎么做?谢谢


--  作者:Bin
--  发布时间:2014/7/29 11:11:00
--  
tables(X).FIlter="(" & tables(X).FIlter & ") and (" & Filter & ")"
--  作者:asionwong
--  发布时间:2014/7/29 11:19:00
--  
能具体点吗?i am 新手菜鸟,谢谢!
--  作者:有点甜
--  发布时间:2014/7/29 11:22:00
--  

 呃,模糊筛选你做好了吗?

 

 做好以后在后面加入代码

 

tables("表A").FIlter="(" & IIF(tables("表A").FIlter="", "1=1", tables("表A").FIlter) & ") and (" & Filter & ")"


--  作者:Bin
--  发布时间:2014/7/29 11:23:00
--  
就这么简单,没别的内容了.   设计查询窗口参考帮助http://www.foxtable.com/help/topics/1058.htm

加多一个判断,防止第一次筛选原本Filter为空的时候报错

if tables(X).FIlter> "" then
tables(X).FIlter="(" & tables(X).FIlter & ") and (" & Filter & ")"
else
  tables(X).FIlter=Filter
end if 

--  作者:asionwong
--  发布时间:2014/7/29 11:29:00
--  
不好意思,不知道怎么做,麻烦给个完整的代码可以吗?万分感谢!
--  作者:Bin
--  发布时间:2014/7/29 11:33:00
--  
看5楼帮助,  多重筛选的完整代码就这么多
--  作者:有点甜
--  发布时间:2014/7/29 11:36:00
--  
以下是引用asionwong在2014-7-29 11:29:00的发言:
不好意思,不知道怎么做,麻烦给个完整的代码可以吗?万分感谢!

 

你实在不知道怎么做,就上传例子吧。

 

你原先的模糊筛选不变,最后一句改一下即可。


--  作者:asionwong
--  发布时间:2014/7/29 11:42:00
--  

Dim Filter As String
With e.Form.Controls("textbox1")
    If .Value IsNot Nothing Then
        Filter = Filter & "产品编码 like \'%" & .Value & "%\'"
    End If
End With
With e.Form.Controls("combobox1")
    If .Value IsNot Nothing Then
        Filter = Filter & "产品分类 like \'%" & .Value & "%\'"
    End If
End With
With e.Form.Controls("textbox2")
    If .Value IsNot Nothing Then
        Filter = Filter & "车型年份 like \'%" & .Value & "%\'"
    End If
End With
With e.Form.Controls("textbox3")
    If .Value IsNot Nothing Then
        Filter = Filter & "适用车型 like \'%" & .Value & "%\'"
    End If
End With
If Tables("配件查询_table1").FIlter> "" Then
Tables("配件查询_table1").FIlter="(" & Tables("配件查询_table1").FIlter & ") And (" & Filter & ")"
Else
  Tables("配件查询_table1").FIlter=Filter
End If

 

请问是这样吗?


--  作者:asionwong
--  发布时间:2014/7/29 11:45:00
--  

Dim Filter As String
With e.Form.Controls("textbox1")
    If .Value IsNot Nothing Then
        Filter = Filter & "产品编码 like \'%" & .Value & "%\'"
    End If
End With
With e.Form.Controls("combobox1")
    If .Value IsNot Nothing Then
        Filter = Filter & "产品分类 like \'%" & .Value & "%\'"
    End If
End With
With e.Form.Controls("textbox2")
    If .Value IsNot Nothing Then
        Filter = Filter & "车型年份 like \'%" & .Value & "%\'"
    End If
End With
With e.Form.Controls("textbox3")
    If .Value IsNot Nothing Then
        Filter = Filter & "适用车型 like \'%" & .Value & "%\'"
    End If
End With
If Tables("配件查询_table1").FIlter> "" Then
Tables("配件查询_table1").FIlter="(" & Tables("配件查询_table1").FIlter & ") And (" & Filter & ")"
Else
  Tables("配件查询_table1").FIlter=Filter
End If

 

请问是这样吗?谢谢