以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]四舍五入表达式怎样写??  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=93003)

--  作者:GD007
--  发布时间:2016/11/18 9:10:00
--  [求助]四舍五入表达式怎样写??
四舍五入怎样写:例如A1+B1=49.5让单元格变成50,表达式怎样写

图片点击可在新窗口打开查看此主题相关图片如下:1111111.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2016/11/18 9:59:13编辑过]

--  作者:有点蓝
--  发布时间:2016/11/18 10:09:00
--  
Output.Show(CInt(49.5))



--  作者:有点蓝
--  发布时间:2016/11/18 10:10:00
--  
表达式的用法:http://www.foxtable.com/webhelp/scr/0108.htm
--  作者:建筑人生
--  发布时间:2016/11/20 17:02:00
--  

Round

将值舍入到最接近的整数或指定的小数位数。

语法:

Round(Value, Digits)

Value: 数值
Digits: 要保留的小数位数。

例如:

Output.Show(Math.Round(3.44, 1)) \'显示3.4
Output.Show(Math.Round(
3.45, 1)) \'显示3.4
Output.Show(Math.Round(
3.46, 1))
\'显示3.5

可以看到Round函数不是严格的四舍五入,而是“四舍六入五成双”,意思是小于五的舍掉,大于五进位,如果等于五,则比较上一位,如果上一位是奇数,则进位,如果是偶数,则舍除,这样等于五的时候,结果始终等于最接近的偶(双)数,也就是成双。

如果你要严格地四舍五入,可以使用Foxtable特别提供的Round2函数:

Output.Show(Round2(3.44, 1)) \'显示3.4
Output.Show(Round2(
3.45, 1)) \'显示3.5
Output.Show(Round2(
3.46, 1))
\'显示3.5

提示: Round2函数不属于Math类,所以直接使用即可。