以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]数字变量错在哪里?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=34117)

--  作者:dqlgood
--  发布时间:2013/5/30 22:05:00
--  [求助]数字变量错在哪里?

Dim n As Integer = 8
Tables("表A").Filter = "[第一列] < n"

执行出错但

Tables("表A").Filter = "[第一列] < 8"

顺利却执行,错在哪里?


--  作者:y2287958
--  发布时间:2013/5/30 22:10:00
--  
Dim n As Integer = 8
Tables("表A").Filter = "[第一列] < " & n
--  作者:夕然
--  发布时间:2013/5/30 22:11:00
--  

n你还不了解动态合成表达式。

应该这样

 

filter = “[产品名称] < \'" & n & "\'"


--  作者:程兴刚
--  发布时间:2013/5/31 0:17:00
--  
以下是引用夕然在2013-5-30 22:11:00的发言:

n你还不了解动态合成表达式。

应该这样

 

filter = “[产品名称] < \'" & n & "\'"

 

人家是数值型,看二楼,字符型列,就听夕然的!


--  作者:夕然
--  发布时间:2013/5/31 9:31:00
--  
 

Tables("订单").Filter = "[产品] = \'PD01\'"  \'字符用单引号括起来
Tables("订单").Filter = "[日期] = #3/17/1999#"  \'日期用#括起来
Tables("订单").Filter = "[折扣] = 0.1"  \'数值直接使用

 

将其中的 PD01 等内容用 " & xx & " 代替

 

这样你就得到了万能的合成表达式的方法了