以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=148281) |
||
-- 作者:和谐 -- 发布时间:2020/4/3 18:43:00 -- [求助] Dim Filter As String = "1=2" Dim val As String = e.Form.Controls("textbox1").Text For Each c As DataCol In DataTables("地区表").DataCols Filter & = " or Convert(varchar(100), " & c.name & ") like \'%" & val & "%\' " 老师请问这句怎么理解呢?为什么 Filter 后面要加&,才可以等于呢? 还有为什么一开始是OR,这句代码怎么也读不明白 Next
|
||
-- 作者:有点蓝 -- 发布时间:2020/4/5 20:10:00 -- filter &= "xxx" 等同于 filter = filter & "xxx" ,一种简写模式。 至于使用or还是使用and要看自己需要的功能。http://www.foxtable.com/webhelp/topics/0102.htm 比如如果是要筛选第一列或者第二列符合条件就使用or 比如如果是要筛选第一列和第二列同时符合就使用and
|
||
-- 作者:和谐 -- 发布时间:2020/4/6 15:28:00 -- Filter & = " or Convert(varchar(100), " & c.name & ") like \'%" & val & "%\' " 老师上面的变量已经定义了Filter是字符串=“1=2”,那这句的是不是:筛选条件:1=2 & 转换地区列为字符串 like 地区列包含“东”,照读就是1=2这个开头就是搞不懂
|
||
-- 作者:有点蓝 -- 发布时间:2020/4/6 16:09:00 -- 统计表达式可以理解为是否的判断,就是:条件1是否成立 or 条件2是否成立 or 条件3是否成立 or ...... 1=2是一种为了减少代码的取巧用法,因为1=2始终都是不成立的,所以:1=2 or 条件2是否成立 or 条件3是否成立 or ...... 就等同于条件1不成立 or 条件2是否成立 or 条件3是否成立 or ...... 如果不用1=2,可能就是这样的:
如果使用1=2,就样
If Filter > "" Then
Filter = Filter & " or " End If [此贴子已经被作者于2020/4/6 16:09:15编辑过]
|