以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=55641)

--  作者:xiaoyongxg2
--  发布时间:2014/8/20 15:17:00
--  [求助]
例如:有三个下拉框分别为A、B、C,如果B下拉框未选择,只查询A and C,如何用表达式表达B下拉框未选择。请老帅指点。
--  作者:有点甜
--  发布时间:2014/8/20 15:20:00
--  

 选择以后的值是什么? 是 A,C ?

 

 那么就这样筛选

 

Tables("表A").Filter = "第一列 in (\'" & "A,C".Repalce(",", "\',\'") & "\')"


--  作者:xiaoyongxg2
--  发布时间:2014/8/20 15:28:00
--  
我说错了甜老师,我想说的是组合框,意思就是说,有三个组合框,任选一个或两个或三个都选,都可以进行查询。我不知道怎么用表达式表达未选中的组合框。
例如:if 省区未选择 then
Tables("初级流向表").Filter ="大区 = \'" & dq.text & "\'And 商业级别=\'" & syjb.text & "\'"
endif
if 之后的表达式该怎么写,请老师指点

--  作者:有点甜
--  发布时间:2014/8/20 15:29:00
--  

 你可以参考这个例子

 

 http://www.foxtable.com/help/topics/1058.htm

 


--  作者:xiaoyongxg2
--  发布时间:2014/8/20 15:34:00
--  
谢谢甜老师,我现在是真没时间看帮助,有时间一定好好看看。
--  作者:有点甜
--  发布时间:2014/8/20 15:39:00
--  

Dim filter As String = "1=1"

Dim c1 As String = e.Form.Controls("ComboBox1").Text
Dim c2 As String = e.Form.Controls("ComboBox2").Text
Dim c3 As String = e.Form.Controls("ComboBox3").Text

If c1 <> Nothing Then
    filter &= " and 大区 = \'" & c1.text & "\'"
End If

If c2 <> Nothing Then
    filter &= " and 第三列 = \'" & c2.text & "\'"
End If

If c3 <> Nothing Then
    filter &= " and 第四列 = \'" & c3.text & "\'"
End If

Tables("初级流向表").Filter = Filter