之前發文問過怎樣將9:05以後的時間自動轉做9:30,如此類推,wbl2049 教了 =TIME(HOUR(A2),IF(MINUTE(A2)>=5,30,0),0) 這樣寫,但現在我需要多一個指令是當9:36之後的時間自動轉做10:00,如此類推。
9:06 轉做 9:30
9:36 轉做 10:00
10:06 轉做 10:30
10:36 轉做 11:00

請問我錯在哪裡呢?
=TIME(IF(MINUTE(A2)>=36,HOUR(A2)+(1/24),0),IF(MINUTE(A2)>=6,30,0),0)
文章關鍵字
=TIME(HOUR(A2),
IF(MINUTE(A2)>=5, IF(MINUTE(A2)>=36,60,30) , 0),
0)


TIME(時 HOUR(A2) ,分 IF(MINUTE(A2)>=5, IF(MINUTE(A2)>=36,60,30) , 0), 秒 0)

分的計算,
先簡化成 IF(MINUTE(A2)>=5, X , 0)

再解內層X:
IF(MINUTE(A2)>=36,60,30)
若>=36分,則分數取60,也就是算下一個小時了,
若<36,固定取30,

如果你歡從內層先解,也可以,

所以...結果正確嗎?(一開始回答的時候沒驗證,剛才驗證是OK的)

kib72377 wrote:
=TIME(HOUR...(恕刪)


不好意思,新手的我想問一下 =TIME(HOUR(A2),
=TIME(HOUR(A2),
IF(MINUTE(A2)>=5, IF(MINUTE(A2)>=36,60,30) , 0),0) 這裡的60,30是已經等於加了一個小時和30分鐘嗎?為什麼不需要用+號呢?
不加的原因是
TIME(時,分,秒)函數
自動會將進位的小單位加到上一級的大單位.
而且你要的不就是 0分 和 30分 , 60分(算下一個小時) 的整數嗎?

kib72377 wrote:
不加的原因是TIME...(恕刪)


謝謝你喔~解釋得太好啦~~一看就明白了!
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!