none
Excel Roundup 函数 Bug !!! RRS feed

  • 问题

  • Roundup函数计算结果,对某些数值不准确。

    具体情况:
    Roundup(0.0055,2), 得到的结果应该为 "0.06".  但是用此“roundup的0.06”,在包含有"0.06"的区域中用vlookup查找,返回结果为 “#N/A”

    Round函数无此问题。

    多试几次发现 0.05x,0.06x Roundup (#, 2)   有问题,

    0.2x,0.7x  则 Roundup (#, 1)  有问题。

    windows Excel为最新版本 MSO  15.0.4763.1003   32位。
    iPhone 版本也有此问题。   Excel Online 也是如此。

    我在Excel Online做了一个文件。也是一样。可以看看。http://1drv.ms/1PoMm3m

    此问题已经在 提出 Microsoft Community,无解答。

    http://answers.microsoft.com/zh-hans/office/forum/office_365hp-excel/excel-roundup-%E5%87%BD%E6%95%B0bug/4fd00003-9b03-4db1-979a-8d76cdfd658b

    ===========================================================

    2015年11月11日补充--------------------------------------------

    ===========================================================

    此问题是ROUNDUP函数对某些数值运算产生了误差。 误差结果如下:

    Roundup(0.0055,2) - 0.06 =  -6.93889 E-18

    Roundup(0.0065,2) - 0.07 =  1.38778 E-17

    Roundup(0.0095,2) - 0.10 =  1.38778 E-17

    Roundup( 0.025,1) - 0.30 =  -5.55112 E-17

    Roundup( 0.075,1) - 0.80 =  1.11022 E-16

    修改建议:具体不知道Roundup函数如何实现,但是如果Round没有问题的话,Roundup可以参照Round最后几步实现。

    规避方法:  把Roundup函数外面再套一层 round函数, 即 Roundup( 0.075,1)   --> round (Roundup( 0.075,1) ,1)

    最终还是应该由微软解决这个问题。不然数据处理出错,是否可以索赔?

    2015年11月6日 7:36