EXCEL中處理小數點位數的函數們

EXCEL中可以處理小數點位數的函數不少,其中比較常用的有取整函數INT()、正常四捨五入函數ROUND()。這些函數在EXCEL中歸類於「數學與三角函數」,那什麼情況下需要用到這些函數呢?

圖1中,我們知道15÷10的精確答案是1.5,若場合需要讓這個結果顯示為整數(即不保留小數點),我們可以「設置單元格格式」→「數值」→「小數位數」選0。EXCEL 2007以上的版本也可以如下圖操作,在表格上方的功能區「開始」→「數字」欄,直接點擊「減少小數位數」。

圖1

圖1中存放算式15÷10結果的C1單元格如願顯示為整數了,但若拿它參與其他計算比如C1*3,得到的結果4.5卻是按原來的精確結果1.5進行運算的。如果就是希望後續參與計算的都是我們看到的整數2呢,那INT()/ROUND()/CEILING()函數們就派上用場了。

圖2 int函數向下取整

圖3 round四捨五入、rounddown靠近零值舍入

圖4 roundup遠離零值舍入數字

公式說明

INT(數值):將數值向下取整為最接近的整數(即比原值小)。

比如INT(1.5)=1,

又比如INT(-1.5)=-2。

Round(數值,保留小數點位數):按要求將數值四捨五入(小數點位數可增可減)。

比如Round(1.5,0)=2,

比如Round(-21.82,1)=-21.8,

又比如Round(21.82,-1)=20。

Rounddown(數值,保留小數點位數):指靠近零值,將數值向下(絕對值減小的方向)舍入數字。

比如Rounddown(1.5,0)=1,

比如Rounddown(-21.82,1)=-21.8,

又比如Rounddown(21.82,-1)=20。

Roundup(數值,保留小數點位數):指遠離零值,將數值向上(絕對值增加的方向)舍入數字,與Rounddown剛好相反。

同樣的例子Roundup(1.5,0)=2,

而Roundup(-21.82,1)=-21.9,

而Roundup(21.82,-1)=30。

重點:Rounddown/Roundup公式語法跟Round一樣,但得到的結果可不一定相同;函數書寫過程大小寫不影響使用。

Ceiling(數值,基數):注意咯,該函數的第二個參數叫「基數」,不同於上面ROUND()函數們是「保留小數點位數」。所以,Ceiling()和Floor()不僅可以處理小數點位數問題,還可以參與其他更複雜的情況。Ceiling函數,是將數值「向上舍入」到指定基數最接近的倍數。

Floor(數值,基數):跟Ceiling()正好反過來,Floor函數是「向下舍入」,即取按照數軸上最接近要求值的左邊值,即不大於要求值的最大的那個值。

比如輸入公式=Ceiling(22.5,3),結果為24(比22.5大且最接近22.5的3的倍數);輸入公式=Floor(22.5,3),結果為21(比22.5小且最接近22.5的3的倍數)。再試試數值為負的情況,Ceiling(-8,3)=-6,而Floor(-8,3)=-9。

圖5 ceiling向上舍入、floor向下舍入

理解了這幾個函數的基本用法,剛好手邊有個實際應用的例題,我們看看這幾個函數在實際工作中的應用,正好加深理解。

題目要求:根據完成率求績效分,完成率大於或等於80%時績效分為0,完成率小於80%時,每減少1%,績效分扣1分,依此類推。

題目分析:題目未明確說明完成率減少不足一個百分點時怎麼計算績效分(即績效分是否取整數),那麼就有三種情況,因此有多個答案多種寫法。正好我們拿來練手,就把各種情況試個遍。

圖6 實際運用函數處理小數點位數

單元格B2公式:=MAX((0.8-A2)/1%,0)

單元格C2公式:=-MIN((A2<80%)*(80%-A2)/1%)

單元格D2公式:=-FLOOR(MAX((0.8-A2)/1%,0),1)

單元格E2公式:=-ROUNDDOWN(MIN((A2<80%)*(80%-A2)/1%),0)

單元格F2公式:=CEILING(MAX((0.8-A2)/1%,0),1),0)

單元格G2公式:=ROUNDUP(MIN((A2<80%)*(80%-A2)/1%),0)

分別輸入以上公式回車後下拉,就OK了。

【原文鏈接:EXCEL中處理小數點位數的函數們】


推薦閱讀:

有沒有一些實用的Excel小竅門?
Excel表格複製後,為什麼其中的透視表數據源還連接在原文件,如何能設置為本地數據源?

TAG:MicrosoftExcel | Excel公式 | Excel使用 |