2007年2月5日 星期一

[EXCEL] 多重單位數值的運算

 
  相關函數INT() / MOD()

  1小時23分45秒,加上2小時34分56秒,答案是?簡單,直接相加,3小時58分41秒。

  1分23秒45,加上2分34秒56,答案是?呃....

##CONTINUE##
  2打又7瓶,加上3打又8瓶,答案是?呃....用個 IF(瓶數加總>=12,打數加1,打數不加1) 公式,可以算出6打又3瓶。

  2打又7瓶,加上3打又8瓶,加上4打又9瓶,加上5打又....?啊....不要再加了啦,IF() 公式中只用 >=12 算不出來了啦!

  類似這種多重單位數值的運算,很實用,但是無法在 Excel 中直接做到,必須做點手腳。我的想法是,先把所有不同單位的數值,換算成最小單位的數值,直接加減運算後,再換算回多重單位

  如下圖,把上面的兩個例子實作出來。


  • C2 公式 =A2*12+B2,可往下複製,將多重單位換算成最小單位,1打=12瓶。
  • C5 公式 =SUM(C2:C4),只是單純做加總運算。
  • D5 公式 =INT(C5/12),把瓶換算成打。
  • E5 公式 =MOD(C5,12),取得換算成打剩下的餘數。

  公式重點在於 INT()MOD() 的應用。其實這比較像數學問題,而不是單純 Excel 的問題。

  進階一點,如果是三重單位的話,如上圖 G1:M5,也是類似的做法。

  • J2 公式 =G2*6000+H2*100+I2,可往下複製,將多重單位換算成最小單位,1分=60秒,1秒=100百分之一秒。
  • J5 公式 =SUM(J2:J4),只是單純做加總運算。
  • K5 公式 =INT(J5/6000),把百分之一秒換算成分。
  • L5 公式 =INT(MOD(J5,6000)/100),把換算成分的餘數,再換算成秒。
  • M5 公式 =MOD(J5,100),取得剩下的餘數。

  相同的公式模式,只要適當填入各單位之間的換算數量 (12, 6000, 100 等),就可以完成多重單位的轉換和運算了。

0 意見: