-
1 # 木子青學館
-
2 # EXCEL大本營
小數點可能有隱藏的尾數,如第一個金額為1.23456789,假設顯示位數為兩位數則為1.23;第二個金額為2.013652,假設顯示位數為兩位數則為2.01;這樣用公式彙總的結果等於3.25,跟肉眼看到的計算結果2.01+1.23=3.24不相符
-
3 # 風過無痕136338736
樓上的人用函式用得腦子轉不過彎了,明明很簡單的操作就能解決偏要用複雜的方式,
這問題幾步就能搞定:
-
4 # Laco72777431
樓主碰到的問題,大致應該類似於(1/3)*10000應該是等於1*10000/3的,但是發現兩個不同單元格分別按這兩個方式計算出來,結果是不一樣的。原因麼就是計算過程不是精確數的表達而是近似小數,總是有一定小數長度的,簡單點,就算是4位小數+2位隱藏小數。前一個,(1/3)*10000=0.3333(33)*10000=3333.3300(00),而後一個,1*10000/3=3333.3333(33),那麼顯示出來分別是3333.3300和3333.3333。解決方式,已有人說了。
-
5 # 康愉子
EXCEL中的小數精度的問題還是蠻讓人困擾的,尤其是財務人員,一分錢都不能差,否則就借貸不平。最典型的場景是做造工資表,做憑證,明明都對上了,可就是有差異。
納尼?這到底是什麼情況?還讓不讓人愉快地玩耍了?
這背後涉及Excel顯示和計算的邏輯,理解了就很好解決。
首先EXCEL顯示是按照單元格設定的格式來的,所看到的數字並不是excel真正儲存的資料。比如,在單元格B1輸入1.3322,如果顯示格式裡設定的是顯示兩位小數,則在excel看到的就是1.33,1.33這個數字是1.3322按照四捨五入保留2位小數後的結果。
但是,excel在進行單元格計算時,卻是基於excel真正儲存的資料計算,比如還有一個單元格B2輸入了1.3344,單元格格式也是顯示2位,現在B3=B1+B2,如果B3單元格格式也是顯示2位,你覺得應該是顯示多少呢?
如果你去Excel驗證就知道,B3顯示的是2.67,因為它是先計算B3=1.3322+1.3344 = 3.6666,然後再進行四捨五入,變成了2.67,而不是 1.33+1.33 = 2.66。
這就是困擾很多財務人員問題,為什麼合計就和明細對不上了。
怎麼解決呢?有兩種辦法。
1、讓excel在顯示時強制調整精度。在 excel選項 — 高階 — 計算此工作薄時,勾選【將精度設為所顯示的精度】。
這樣excel計算時,會忽略實際精度,按照顯示的資料進行計算,前面的示例,B3單元格的資料就變成了2.66。
2、透過函式進行轉換。常用的是Round 函式,進行四捨五入,Round(A3,2),第一個引數是需要四捨五入的數值,第二個引數是小數位數。與之類似的函式還有 向上取值RoundUp,向下取值RoundDown,取整Int。
第一種方式很簡單很暴力,但會影響整個excel中的資料,並不是所有場景下都適應。第二種方式要複雜一些,但勝在靈活,從財務角度,更多是在用第二種方式,因為財務本就比較嚴謹要求資料非常精確。
回覆列表
EXCEL中公式數字都對,但就是小數合不上,是因為沒有用round函式
excel中round函式的使用方法
不少朋友都會問在excel中round函式怎麼用,作為使用頻率較高函式之一,本文就介紹一下round函式的使用方法。
工具/原料
office excel
函式解釋
1
round函式用來對數值進行四捨五入。
語法:ROUND(number, num_digits)
其中
number表示需要進行四捨五入的數值或單元格內容。
num_digits表示需要取多少位的引數。
num_digits>0時,表示取小數點後對應位數的四捨五入數值。
num_digits=0時,表示則將數字四捨五入到最接近的整數。
num_digits< 0時,表示對小數點左側前幾位進行四捨五入。
END
方法/步驟
1
以15.5627這個數值為例,求它四捨五入得到的值。因為15.5627在A19單元格內,所有後面公式中number都選擇A19。
步驟閱讀
2
在B20單元格內輸入公式=ROUND(A19,2)
步驟閱讀
3
取小數點後兩位得到的結果是15.76。
在B22單元格內輸入公式=ROUND(A19,0)
步驟閱讀
4
取最接近的整數得到的結果是18。
在B24單元格內輸入=ROUND(A19,-1)
步驟閱讀
5
所有的結果都透過round函式計算得到。
大家應該都明白了吧,可以透過公式的第二個引數來求不同應用的四捨五入值。