Foxtable(狐表)用户栏目专家坐堂 → 四舍五入 表达式列计算结果不准确,经常出错


  共有7183人关注过本帖树形打印复制链接

主题:四舍五入 表达式列计算结果不准确,经常出错

帅哥哟,离线,有人找我吗?
louis_sun
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:21 积分:186 威望:0 精华:0 注册:2013/7/15 11:27:00
四舍五入 表达式列计算结果不准确,经常出错  发帖心情 Post By:2013/7/15 13:54:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table

表达式并没有提供传统的四舍五入函数Round,我们只能用Convert函数来间接实现。

例如金额列原来的计算公式为:

[数量] * [单价] * (1 - [折扣])

为了保留两位小数,可以将公式改为:

Convert([数量] * [单价] * (1 - [折扣]) * 100, 'System.Int64') / 100

原理很简单:将计算结果乘以100,然后取整,最后除以100。

如果你要保留三位小数,将表达式中的100改为1000即可,其余类推。



为什么我的机器,输入  Convert(0.005*100, 'System.Int64') / 100 

显示的结果 是 0

Convert(0.006*100, 'System.Int64') / 100  

显示的结果才是0.01


[此贴子已经被作者于2013-7-15 16:06:28编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
louis_sun
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:21 积分:186 威望:0 精华:0 注册:2013/7/15 11:27:00
  发帖心情 Post By:2013/7/15 14:01:00 [只看该作者]

?????????????????????????

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/15 14:02:00 [只看该作者]

你不是使用代码减少0.005了?  否则0.006怎么会算出0.01来.

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/7/15 14:04:00 [只看该作者]

Convert(0.005 *100 + 0.00000001, 'System.Int64') / 100

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/15 14:10:00 [只看该作者]

或者 Convert(0.005*100, 'System.Decimal') / 100

 回到顶部
帅哥哟,离线,有人找我吗?
louis_sun
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:21 积分:186 威望:0 精华:0 注册:2013/7/15 11:27:00
  发帖心情 Post By:2013/7/15 14:23:00 [只看该作者]

可是为什么我的这个项目里,“公企明细”表里的“计费单价”列显示的结果是43.72.。
用excel算的结果却能正常显示43.73。
上面两个方法我都试了,都不好使啊!
[此贴子已经被作者于2013-7-15 14:26:25编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
louis_sun
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:21 积分:186 威望:0 精华:0 注册:2013/7/15 11:27:00
  发帖心情 Post By:2013/7/15 14:32:00 [只看该作者]

???????????????????????????????????????????????

 回到顶部
帅哥哟,离线,有人找我吗?
louis_sun
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:21 积分:186 威望:0 精华:0 注册:2013/7/15 11:27:00
  发帖心情 Post By:2013/7/15 14:35:00 [只看该作者]

??????????????????????
坐等回复!!!!!!!!!!!!!!!!!

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/15 14:35:00 [只看该作者]

例子发出来看看.包括你Excel计算的例子.

 回到顶部
帅哥哟,离线,有人找我吗?
louis_sun
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:21 积分:186 威望:0 精华:0 注册:2013/7/15 11:27:00
  发帖心情 Post By:2013/7/15 14:36:00 [只看该作者]

例子在1楼。。。。

 回到顶部
总数 36 1 2 3 4 下一页