以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]金额筛选  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=78876)

--  作者:seal51
--  发布时间:2015/12/19 10:17:00
--  [求助]金额筛选

Tables("客户列表.订单主表").Filter = "欠款<>0"

筛选金额不等于0的订单, 但是有时候像0.0001的数字, 因为显示小数后两位, 所以筛选不了, 如何办

如果写 <0并且>0.1的筛选如何写


--  作者:Hyphen
--  发布时间:2015/12/19 11:23:00
--  

如果确实是0.0001,而只显示小数后两位,"欠款<>0"并没有问题。筛选不到,应该是值确实为0,并不是0.0001

 

 

可以参考显示一下是否有值:Output.Show(CDec(Tables("表A").Current("第三列")).Tostring("0.0000000000000"))


--  作者:seal51
--  发布时间:2015/12/19 15:38:00
--  

执行结果是0.0000000000000


--  作者:Hyphen
--  发布时间:2015/12/19 15:41:00
--  
说明实际值就是0,而不是0.0001
--  作者:seal51
--  发布时间:2015/12/19 15:49:00
--  

那怎么筛选不了呢

Tables("客户列表.订单主表").Filter = "欠款<>0"

 

0值还存在,筛选不成功, 怎么回事!

[此贴子已经被作者于2015/12/19 15:50:08编辑过]

--  作者:Hyphen
--  发布时间:2015/12/19 16:01:00
--  
上传例子
--  作者:seal51
--  发布时间:2015/12/19 16:09:00
--  

筛选代码对副本表, 表达式列有影响吗?

大部分0值都筛选掉了, 只有个别的, 奇怪?

[此贴子已经被作者于2015/12/19 16:10:49编辑过]

--  作者:Hyphen
--  发布时间:2015/12/19 16:14:00
--  
如果是表达式,说明计算的结果不是0,表达式取整或者格式化一下
--  作者:seal51
--  发布时间:2015/12/20 11:13:00
--  

([期初金额] + [订单金额]) - [已收金额]  

 

这个表达式如何格式化, 保持小数后两位


--  作者:大红袍
--  发布时间:2015/12/20 11:29:00
--  

筛选可以这样写

 

Tables("客户列表.订单主表").Filter = "欠款 > 0.000001"

 

四舍五入这样写

 

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