以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 窗口只有一个表可以帅选的,现在增加了一个表(一个窗口2个表了),点击帅选出现了提示 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=50472) |
||||
-- 作者:xianxin2010 -- 发布时间:2014/5/7 11:35:00 -- 窗口只有一个表可以帅选的,现在增加了一个表(一个窗口2个表了),点击帅选出现了提示
窗口只有一个表A是可以帅选的,现在在窗口增加了一个表B(一个窗口2个表了),点击帅选出现了提示
"未找到类型“Table”的公共成员“Text”。" 表B没有作用,只要可以存在在窗口,原有能筛选就行, [此贴子已经被作者于2014-5-7 11:37:17编辑过]
|
||||
-- 作者:Bin -- 发布时间:2014/5/7 11:36:00 -- Table 是没有Text 这个成员的. |
||||
-- 作者:lsy -- 发布时间:2014/5/7 11:39:00 -- Dim flt As String For Each c As Col In Tables("表A").Cols For Each ctl As WinForm.Control In e.Form.Controls If ctl.Gettype.name <> "Table" Then If e.Form.Controls(ctl.Name).Text > "" Then If ctl.Gettype.Name = "RadioButton" Then If ctl.Name.Split("_")(0) = c.Name AndAlso e.Form.Controls(ctl.Name).Checked Then flt + = c.Name & " = \'" & e.Form.Controls(ctl.Name).Text & "\' And " End If Else If ctl.Name.Contains("0") AndAlso ctl.Name.Split("_")(0) = c.Name Then flt + = c.Name & " = \'" & e.Form.Controls(ctl.Name).Text & "\' And " ElseIf ctl.Name.Contains("1") AndAlso ctl.Name.Split("_")(0) = c.Name Then flt + = c.Name & " >= " & e.Form.Controls(ctl.Name).Text & " And " ElseIf ctl.Name.Contains("2") AndAlso ctl.Name.Split("_")(0) = c.Name Then flt + = c.Name & " <= " & e.Form.Controls(ctl.Name).Text & " And " ElseIf ctl.Name = c.Name AndAlso c.Name = "字符模糊搜索" Then flt + = c.Name & " Like \'%" & e.Form.Controls(ctl.Name).Text & "%\' And " End If End If End If End If Next Next If flt > "" Then flt = flt.SubString(0,flt.Length - 5) End If Tables("表A").Filter = flt |
||||
-- 作者:有点甜 -- 发布时间:2014/5/7 11:40:00 -- 改一下这句代码
If ctl.name <> "Table1" AndAlso ctl.Name <> "Table2" Then |
||||
-- 作者:xianxin2010 -- 发布时间:2014/5/7 11:40:00 -- 以下是引用Bin在2014-5-7 11:36:00的发言: Table 是没有Text 这个成员的. 只要能筛选就行,表B要在窗口内存在, 现在情况是删掉窗口中的表B就可以帅选了,表B放上去就出现提示了,,, |
||||
-- 作者:xianxin2010 -- 发布时间:2014/5/7 11:40:00 -- 模拟高级筛选_单选框.table,是lsy帮忙做的,谢谢, |
||||
-- 作者:有点甜 -- 发布时间:2014/5/7 11:41:00 -- 再有就是,对于筛选的字段,处理方法如下。
1、把筛选的控件都放在一个容器里面,然后遍历容器;
2、或者,筛选的控件,命名有一个规范,比如前面都是 filter_xxxx;这样就可以判断了。 |
||||
-- 作者:Bin -- 发布时间:2014/5/7 11:46:00 -- 你遍历控件,没有排除Table2 所以报错 排除一下即可 |
||||
-- 作者:xianxin2010 -- 发布时间:2014/5/7 12:07:00 -- lsy ,有点甜 ,Bin 感谢大家。 |