如何从日期时间格式12/10/2012 12:18:58 PM
中提取小时数?
我在另一个Stack Overflow问题上找到了这个Hour(Format(d1, "mm/dd/yyyy HH:mm:ss HH24"))
,但不适合我。
答案 0 :(得分:10)
这应该有效
= TEXT(D1," hh")
并格式化为时间
答案 1 :(得分:3)
如果D1
包含日期/时间Date Time Serial Number
或字符串可识别为date time
,请使用=Hour(D1)
例如D1
=字符串21/03/2013 18:45:00
=Hour(D1)
= 18
例如D1
= 41354.781250
然后=Hour(D1)
= 18
注意:D1
可能包含值,但可以格式化为显示为日期/时间。检查单元格编号格式。
要在VBA中执行此操作
Sub demo()
Dim rng As Range
Dim Hr As Long
Set rng = Range("D1")
Hr = Hour(rng.Value)
Debug.Print Hr
End Sub
在Immediate Window
答案 2 :(得分:2)
尝试:
Hour(format(now(), "yyyy-MM-dd hh:mm:ss"))
答案 3 :(得分:1)
如果“12/10/2012 12:18:58 PM”在单元格A1中:
=TIME(HOUR(a1),MINUTE(a1),SECOND(a1))
输入公式后,您可以右键单击“格式化单元格”并选择要查看的时间格式。我在Excel 2013中验证了这个公式。
答案 4 :(得分:0)