我必須包含數據的格式爲mm/dd/yyyy hh:mm
的B和C列,會議。VBA宏 - 從日期和時間excel單元提取時間 - VBA
我試圖創建一個VBA宏,它可以從兩列中僅提取格式爲hh:mm
的時間,然後計算兩個時間點之間的差異,以便找出每個會議的持續時間(結果將顯示在D欄中)。
你能告訴我們這裏可以做些什麼嗎?
我必須包含數據的格式爲mm/dd/yyyy hh:mm
的B和C列,會議。VBA宏 - 從日期和時間excel單元提取時間 - VBA
我試圖創建一個VBA宏,它可以從兩列中僅提取格式爲hh:mm
的時間,然後計算兩個時間點之間的差異,以便找出每個會議的持續時間(結果將顯示在D欄中)。
你能告訴我們這裏可以做些什麼嗎?
在列d使用式
=(C:C-B:B)*24
得到以小時的差異。
或者,而不是僅僅用下面的公式在列d
=C:C-B:B
和格式列d隨着時間得到的格式的區別就像hh:mm
您可以添加此公式到VBA所需的範圍,如果需要的話,如
With Worksheets("MySheet").Range("D1:D5").Formula = "=(C:C-B:B)*24"
或時間格式類似於
With Worksheets("MySheet").Range("D1:D5")
.Formula = "=C:C-B:B"
.NumberFormat = "hh:mm"
End With
隨着19/06/2017 13:30:00
在A1
和20/06/2017 13:39:00
在A2
。
給出定製數字格式[h]:mm:ss
的公式=A2-A1
返回24:09:00
。
h
附近的方括號告訴Excel顯示超過24小時的時間。
如果沒有方括號,它會顯示時間00:09:00
。這是因爲它計算爲1天9分鐘,但沒有顯示天數。
爲了獲得日期的時間,您可以將時間格式化爲保持日期/時間飛鏢部分的時間,但只顯示時間。
或者,您可以刪除日期/時間的整數以獲得時間 - 在這種情況下日期部分將顯示爲00/01/1900。 =A1-INT(A1)
如果B/C是日期時間只是通過它們兩個,因爲它們是作爲參數datediff() –
日期部分總是相同的每對? –
這不需要宏,可以用公式計算 – avb