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中可以處理小數點位數的函式不少,其中比較常用的有取整函式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中處理小數點位數的函式們】