反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

Round函数

  • 文档创建者:lu123
  • 历史版本:8
  • 最近更新:Roxy 于 2021-05-25
  • 1. 概述

    1.1 应用场景

    在制作报表时,某数据列如收入金额是数字类型,其中数据包含小数,且小数位数不超过 2 位,对该列进行求和(使用公式 sum)等处理时,会发现最终的结果如:123456.409999996,即小数位数超过 2 位。

    此时您可能会有疑问,为什么小数位数不是 2 位?若您的报表对有效位数比较敏感,如金额汇总,总金额最多精确到分,即小数位数最多 2 位,该怎么办?

    1.2 功能简介

    此情况时,可使用 round() 函数对计算后的结果按指定位数四舍五入来解决。

    2. 示例

    2.1 函数说明

    1)概述

    语法
    ROUND(number,num_digits, boolean)

    返回指定数字的绝对值

    绝对值是指没有正负符号的数值

    参数1number

    需要进行舍入的数字


    参数2num_digits

    如果 num_digits 大于 0,则舍入到指定的小数位。

    如果 num_digits 等于 0,则舍入到最接近的整数。

    如果 num_digits 小于 0,则在小数点左侧进行舍入。

    参数3boolean因浮点数存在精度计算丢失问题,导致计算结果里可能带上9999,0000这些,因此加入第三个参数来控制是否需要去除9999,0000

    false表示需要过滤9999,0000这些数据,true表示保留,参数为空则默认为false

    2)注意事项

    • 2020-07-08 及之后版本的 JAR 包才会有第三个参数。

    • 2020-07-08 及之后版本的 JAR 包 number 参数支持字符串。

    3)示例

    公式
    结果
    ROUND(2.15, 1)2.2
    ROUND(2.149, 1)2.1
    ROUND(-1.475, 2)-1.48
    ROUND(21.5, -1)20
    ROUND(1.99999999, 8)2
    ROUND(1.99999999, 8, true)1.99999999

    2.2 操作步骤

    如下所示,报表中的收入列求和,设计如下:

    222

    如上对收入 sum 求和(B4 单元格)后精度变大了。遇到这样的情况时,可使用 round 函数对求和结果按 2 位小数位四舍五入,即 B5 单元格中的使用方法。


    附件列表


    主题: 报表专题
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526