Excel十进制舍入?

时间:2012-04-26 21:14:06

标签: excel decimal rounding

如何对excel中的数字进行舍入,例如通过格式化它以使实际数字更改而不仅仅是它在单元格中的外观。

例如,如果我在一个单元格中有229.729599999998并且我将单元格格式化为仅显示4个小数位,那么它现在将在单元格中显示229.7296但是单元格的值仍然是229.729599999998所以如果我要进行任何计算excel会使用较长的十进制数来反对4位十进制数。

有没有办法可以做到这一点,不仅单元格中的数字外观显示4位小数,而且单元格的实际值将反映4位小数,以便单元格和值中的公式栏将显示229.7296而不是229.729599999998。

我知道我可以使用相邻单元格中的函数或公式来对数字进行舍入,但我只是将一个巨大的电子表格放在一起,如果我必须为所有单元格执行相同的操作,则需要很长时间在我的电子表格中。有任何想法吗?

4 个答案:

答案 0 :(得分:6)

只需将数字复制到工作表中,然后将其另存为新CSV。然后关闭CSV并再次打开它,你的数字将被舍入......

答案 1 :(得分:5)

我能想到的两种方式是:

  • 如果是一个关闭:创建一个新选项卡,其中每个单元格基于原始工作表计算,例如在单元格A1中:=ROUND(OriginalTab!A1,4)等。然后将特殊值粘贴回原始工作表。< / LI>
  • 运行一个vba宏,它将工作表上的每个单元格舍入到4位小数。

答案 2 :(得分:3)

还有另一种选择:使用'精确显示'设置(在计算选项下找到)。

来自excel帮助

  
    
      

永久性地将单元格中的存储值从完全精度(15位数)更改为任何格式,包括小数位数。

    
  

答案 3 :(得分:1)

舍入十进制数可以使用公式来完成,您可以更改小数而不是所有尾随数。

我更喜欢替代方法,但我会同时显示

首先取值(输入或公式)减去int并乘以100。 这将使十进制值成为整数。使用MROUND来圆。 现在将其除以100并加回原始整数。

示例:=((MROUND(((K7-J8)-INT(K7-J8))* 100,10))/ 100)+ INT(K7-J8)  如果值为229.729599999998则为新值229.700000000000

替代方法 取决于您想要的小数位数。 MOD(值,1)给出小数部分 * 100两个地方1000个3个地方10000个4个地方等 MROUND然后除以你乘以Ex的相同数字。 1000个用于3个位置,最后将其添加回整数或值。

实施例。 =(MROUND(INT(MOD(U9,1)* 1000),10))/ 1000 + INT(U9) 这将使数字为229.730