2012-04-26 251 views
5

如何在excel中对数字进行舍入,例如格式化数字,以便实际的数字发生变化,而不仅仅是在单元格中出现。Excel十进制舍入?

例如,如果我的单元格中有229.729599999998,并且我将单元格的格式设置为只显示4个小数位,它现在会在单元格中显示229.7296,但单元格的值仍然为229.729599999998,所以如果我要执行任何操作Excel的计算会使用较长的十进制数来抵抗4个十进制数。

是否有办法让我这样做,不仅仅是单元格中数字的外观显示4位小数,而是使单元格的实际值将反映4位十进制数,以便单元格和值公式栏将显示229.7296而不是229.729599999998。

我知道我大概可以在相邻的单元格中使用函数或公式来舍入数字,但是我只是拼凑了一个巨大的电子表格,如果我必须对所有细胞在我的电子表格中。有任何想法吗?

回答

5

的2种方式我能想到的是:

  • 如果它是一个关闭:创建其中每个单元是基于所述原始片来计算一个新的标签,例如,在单元格A1:=ROUND(OriginalTab!A1,4)等。然后将特殊值复制粘贴回原始工作表。
  • 运行一个vba宏,它可以将工作表上的每个单元四舍五入到小数点后4位。
+0

其次。这几乎是两种选择,哪种意味着OP是SOL。 – ktdrv 2012-04-26 21:21:34

+0

我打算推荐VBA宏对列或列 – 2012-04-26 21:24:55

+0

Awesome进行一次性程序更改。谢谢,这将工作! – 2012-04-26 21:25:29

3

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

从Excel帮助从全精度(15位),以任何格式,包括小数细胞

永久改变存储的值,则显示。

+0

这是四舍五入还是截断? – Ross 2013-11-27 09:43:03

6

号码只要复制成片状和保存,作为一个新的CSV。然后关闭CSV并再次打开并且您的数字四舍五入...

+1

这是快速和肮脏,它的工作原理。 – timothyjgraham 2015-12-21 04:06:51

1

四舍五入的十进制数可以用一个公式完成,您可以在其中更改小数并且不具有所有尾随数字。

我更喜欢备用方法,但我会同时显示

先取的值(输入或式)减去int和100。 此相乘将使十进制值的整数。使用MROUND四舍五入。 现在除以100并加回原来的整数。例如:=((MROUND(((K7-J8)-INT(K7-J8))* 100,10))/ 100)+ INT(K7-J8) 如果该值为229.729599999998则新值229.700000000000

备选方法 取决于您想要的小数位数。 MOD(价值,1)给你小数部分 *两个地方100个3个地方1000个4个地方10000个等。然后除以你在Ex上面乘以的相同数字。 1000为3个地方,最后加回到整数或值。

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

+0

.................好主意! – 2017-07-27 22:24:35