返回列表 上一主題 發帖

excel 時間是否可以相減

不懂, 一天也才 24 小時, 為什麼會出現 27:00 and 25:45 ?

TOP

回復 11# sghsgh1111


    你好, 25時即是零晨的1時(24+1) , 用以計overnight的時間.

TOP

回復  xmi
sghsgh1111 發表於 2015-3-14 17:56
  1. Sub ex()
  2.     Dim a, b, c

  3.     For c = 1 To 20
  4.         a = Range("A" & c + 1).Value
  5.         b = Range("B" & c + 1).Value
  6.         If a = "" Then Exit For
  7.         If b < a Then b = b + 1
  8.         With Cells(c + 1, 3)
  9.             .Value = (b - a) * 24
  10.             .NumberFormat = "0.00時"
  11.         End With
  12.     Next
  13. End Sub
複製代碼
這個結果出錯了, 最尾兩個的結果應是2.45小時, 和2.12小才對.  請問錯在那裡?
  1. Start        End                Duration
  2. 13:00        15:00        2.00時
  3. 22:00        3:00                5.00時
  4. 23:00        1:45                2.75時 <-- 應是2.45
  5. 23:00        1:12                2.20時 <-- 應是2.12
複製代碼

TOP

回復 13# xmi
你想錯了,23:00~23:30 是0.5小時 , 不是0.3小時
表達不清、題意不明確、沒附檔案格式、沒有討論問題的態度~~~~~~以上愛莫能助。

TOP

回復 14# stillfish00


    對呀 23:00~23:30 是0.5小時 , 不是0.3小時, 我沒有想錯呀... 但樓上的結果就顯示錯誤...但我不懂修正:(

TOP

回復 15# xmi
45/60->=0.75
12/60->=0.2
  1. Start        End                Duration
  2. 13:00        15:00        2.00時
  3. 22:00        3:00                5.00時
  4. 23:00        1:45                2.75時 <-- 不是2.45
  5. 23:00        1:12                2.20時 <-- 不是2.12
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

xmi : 這個結果出錯了, 最尾兩個的結果應是2.45小時, 和2.12小才對.  請問錯在那裡?
ANS
時間不是十進位數,
一天是 24 小時
一小時是 60 分  (60進位數)
一分鐘是 60 秒  (60進位數)
因為你要算的是小時, 所以分母不可以用10 而是要用 60 來看
所以 GBKEE版主才會用這個算式給你看    ( 分=>小時)
45/60->=0.75
12/60->=0.2
但如果你硬要寫成 2.45小時, 和2.12
那你可能要改一下你的寫法 2:45 和 2:12, 這樣別人比較看的懂

TOP

回復 17# sghsgh1111


    不好意思, 我還是不明白....:Q

TOP

OH.... 原來如此 ... 那如果寫成2:45 和 2:12, 要如何? 我太笨了

TOP

回復 19# xmi
  1. Option Explicit
  2. Sub Ex()
  3.     Dim a, b, c
  4.     For c = 1 To 20
  5.         a = Range("A" & c + 1).Value
  6.         b = Range("B" & c + 1).Value
  7.         If a = "" Then Exit For
  8.         If b < a Then b = b + 1
  9.         With Cells(c + 1, 3)
  10.             .Value = (b - a)
  11.             .NumberFormatLocal = "hh.mm""時"""
  12.             '.NumberFormat = "0.00時"
  13.         End With
  14.     Next
  15. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 我們要做好社會的環保,也要做好內心的環保。
返回列表 上一主題