以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 这段筛选代码为什么会报错? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=26988) |
-- 作者:wsxdwh -- 发布时间:2012/12/19 12:59:00 -- 这段筛选代码为什么会报错? 请专家指点,下面代码能正常输入,但执行时报错,如何修改 Dim qu As WinForm.ComboBox = e.Form.Controls("区")
只选择“区”提示:Syntax error: Missing operand after \'\'**\'\' operator. 选择“区”,“中小学”提示:Syntax error: Missing operand after \'\'*小学组*\'\' operator. |
-- 作者:狐狸爸爸 -- 发布时间:2012/12/19 13:06:00 -- 注意And和Like前后都要有空格的。 Dim qu As WinForm.ComboBox = e.Form.Controls("区") Dim zxx As WinForm.ComboBox = e.Form.Controls("中小学") Dim xx As WinForm.ComboBox = e.Form.Controls("学校") Dim xm As WinForm.ComboBox = e.Form.Controls("项目") Tables("报名表").Filter="区= \'" & qu.Text & "\' And 中小学 like \'*" & zxx.Text & "*\' and 学校 like \'*" & xx.Text & "*\' and 参赛项目 like \'*" & xm.Text & "*\'" 如果还是不行,就用messagebox.show显示一下合成的条件表达式,看看是什么: Dim qu As WinForm.ComboBox = e.Form.Controls("区") Dim zxx As WinForm.ComboBox = e.Form.Controls("中小学") Dim xx As WinForm.ComboBox = e.Form.Controls("学校") Dim xm As WinForm.ComboBox = e.Form.Controls("项目") Dim flt As String = "区= \'" & qu.Text & "\' And 中小学 like \'*" & zxx.Text & "*\' and 学校 like \'*" & xx.Text & "*\' and 参赛项目 like \'*" & xm.Text & "*\'" MessageBox.Show(flt) Tables("报名表").Filter= flt |
-- 作者:wsxdwh -- 发布时间:2012/12/19 13:14:00 -- 谢谢指教! 现在主表可以查询,但是窗口显示的表没有被驱动。 窗口绑定表是用代码生成的: Tables(e.Form.Name & "_Table1").DataSource = DataTables("报名表")
[此贴子已经被作者于2012-12-19 13:29:13编辑过]
|
-- 作者:lin_hailun -- 发布时间:2012/12/19 14:07:00 -- 因为这个是副本。你这样设置一下。 Tables(e.Form.Name & "_Table1").DataSource = DataTables("报名表") Tables(e.Form.Name & "_Table1").Filter = Tables("报名表").Filter |
-- 作者:wsxdwh -- 发布时间:2012/12/20 8:59:00 -- 谢谢 !!! |