(網友提問)在 Excel 的工作表中有一個數值清單,如何將數值取無條件進位至5的倍數?(參考下圖)
【公式設計與解析】
儲存格B2:
=INT(A2/10)*10+(MOD(A2,10)>5)*10+(MOD(A2,10)>0)*(MOD(A2,10)<=5)*5
(1) INT(A2/10)*10
利用 INT 函數將儲存格A2的數值中的個位數去除(變成 0)
(2) (MOD(A2,10)>5)*10
利用 MOD 函數取得個位數,並且判斷是否大於 5,若是,則傳回『10』,否則傳回 0。
(3) (MOD(A2,10)>0)*(MOD(A2,10)<=5)*5
利用 MOD 函數取得個位數,並且判斷是否大於 0 且小於或等於 5,若是,則傳回『5』,否則傳回 0。
將(1)+(2)+(3),即為所求。
文章標籤
全站熱搜

如果是2007以上的版本,也可以用roundup喔。 =ROUNDUP(A2/5,0)*5 這樣也可以。
是的,謝謝你。 先前這篇也有提到:http://isvincent.pixnet.net/blog/post/31113625 本篇的寫法,比較像是利用運算思維來解題。 也可以參考:http://isvincent.pixnet.net/blog/post/47695734
無條件進位至某數的倍數,也可以用ceiling! =ceiling(A2,5)
謝謝你提供實用的資訊,並且謝謝你光臨我的網站。
請問如果數值不足20,公式應該如何代? 例如:20x1x0.1425=2.85==>不足20,怎麼自動變20呢?? 謝謝您!