Excel-VBA:“银行家舍入” 与“国际标准的四舍五入”

  • 银行家舍入
  • 国际标准的四舍五入
  • Excel里的 Round函数

银行家舍入

银行家舍入法就是大家所用的四舍五入法,例如,保留两位小数时,第三位小数的值大于5,则第二位小数要进1;否者,舍掉。

已数字举例

国际标准的四舍五入

大部分编程软件使用的四舍五入,也就是国际标准的四舍五入,其原则为:
四舍六入五考虑,五后非零就进一,五后为零看奇偶,五前为偶应舍去,五前为奇要进一。

以几个数字来举例这个"舍入法则"

Excel里的 Round函数

前面讲了两种舍入法,其实时为更好引出要解决的现实场景中的数据问题。
round函数的官方链接文档:Round函数

Round函数有两个参数,即 Round(A,B)
其中A为要调整的原值,一般为双精度小数;B为自定义的整数,用于指定A要保留几位小数。

把官网的举例搬过来

值得注意的是
Round函数,在工作表和VBA中有区别。在工作表中是四舍五入,在VBA中是四舍六入五考虑,也就是国际标准的舍入法。

用以下语句去封装round函数,再调用这个封装的函数,就可以达到国际标准的舍入法

Function TranValue(rng As Double, number As Integer) As Double
TranValue = Round(rng, number)
End Function

打开VBA编辑器,右键ThisWorkbook右键->插入->模块

然后 ctrl+s 保存。
就可以再工作表里使用 tranvalue这个函数了。

以上。

Excel-VBA:“银行家舍入” 与“国际标准的四舍五入”相关推荐

  1. 您推荐哪些Excel VBA书籍

    Maybe you can help. I got an email this week from an Excel 2007 user who wants book recommendations: ...

  2. JS toFixed(银行家舍入法)及其缺陷和解决方法

    所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法. 据说,大部分的编程软件都使用的是这种方法,也算是一种国际标准. 所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双 ...

  3. Excel VBA(宏):添加宏

    写在前面:1.编写宏,打开VBA,双击ThisWorkbook对当前工作薄进行编写宏:双击Sheet1,对整个sheet编写宏: 或者创建模块,在模块里,编写.调试代码. 打开VBA的方法见第一讲,结 ...

  4. 详解xlwings包,用Python代替Excel VBA

    详解xlwings包,用Python代替Excel VBA <代替VBA! 用Python轻松实现Excel编程>demo 主要内容 Python语法基础 Excel对象模型:OpenPy ...

  5. 来吧!带你玩转 Excel VBA

    来吧!带你玩转 Excel VBA(含CD光盘1张)(双色)(附带近500个VBA思考练习题,Exceltip.net出品) 罗刚君  杨嘉恺编著 ISBN 978-7-121-20627-6 201 ...

  6. 来吧 带你玩转 Excel VBA

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 来吧!带 ...

  7. 用计算机四舍五入偷银行储户的钱,银行家舍入VS四舍五入(下):.NET发现之旅(四)...

    昨天和IBM以前培训的一个学员聊天,他问我.NET Framework提供四舍五***的方法了吗?我当时解释了老半天,索性就直接写一篇博文吧,以后学生问起,直接发文章看. ×××运算中的四舍五***法 ...

  8. 银行家舍入-四舍六入五成双

    在js的计算中: 一个例子,比如说一件商品,它的含税单价是450,税率是3%,那么我们将它转为不含税单价.450/1.03=436.8932038834951 结果是17位,共13位小数.当然实际上, ...

  9. 四舍五入VS银行家舍入 (四舍六入五取偶)

    相信细心的程序员们早就发现了.net环境下默认舍入算法的是"四舍六入"的算法.从小学我们就学过"四舍五入"算法,但是更加科学的舍入办法应该是"四舍六入 ...

最新文章

  1. SLAM小结——求解退化问题解析(F、H、E)(面试经验总结)
  2. 高并发的核心技术 - 幂等的实现方案
  3. QIIME 2教程. 20实用程序Utilities(2021.2)
  4. 跟小静学CLR via C#(12)-委托Delegate
  5. asp.net request编码问题,(转载)
  6. javaScript原生定义的函数
  7. POJ3498最大流,枚举终点,企鹅,基础最大流
  8. 将来不当科学家,今天不必做科研?
  9. 科技无障碍盛会举办,人工智能和创新成为高频词!
  10. 一款短小精悍的日志分析工具web_log_analyse
  11. PostgreSQL如何拼接字符串
  12. 电机振动噪声(NVH)——整数槽分数槽谐波分析补充
  13. Java集成建行龙支付接口(详细)
  14. Layui 表单设计器
  15. 2020年加班工资新规定:1.5倍、2倍、3倍,终于理清楚了!
  16. ye读春秋左传系列视频讲解
  17. ChatGPT指令大全(建议收藏)
  18. 垃圾分类,一场输不起的世界大战--20190711
  19. 山寨山寨版手机安全卫士源码项目
  20. 剑客vs刀客 Java vs .NET

热门文章

  1. Linux - Unix环境高级编程(第三版) 代码编译
  2. 条件概率,乘法定理 (概统1)
  3. 从零开始Android游戏编程(第二版) 第一版前言
  4. matlab报错之未定义与 ‘double‘ 类型的输入参数相对应的函数 ‘tf‘
  5. 使用ps完成手写数字图片(用于验证手写数字模型或制作数据集)
  6. 定义一个数组并输出-Java
  7. Python、Cython、CPython的简单对比
  8. 机器学习:SVR支持向量机回归
  9. tar .........
  10. visitor模式入门