Excelstring到时间格式
在Excel中,我将使用什么函数将单元格A1中的string“2012-12-19 12:08 PM”转换为显示为“13:08”(不使用VBA)的时间格式?
没有一个Excel函数可以做你想做的事情,因为你的时间string是date和时间的组合。 按照ASmith的build议,可以组合function来获得所需的结果。
他下面的公式计算一个时间值,然后可以使用“13:30”格式格式化为一个时间。
=TIMEVALUE(MID(A1,SEARCH(" ",A1)+1,SEARCH("M",A1)-SEARCH(" ",A1)))
公式的MID(…)部分通过“AM”或“PM”中的“M”来提取由inputstring中第一个空格后面的字符组成的时间。 TIMEVALUE函数返回提取时间string的Excel值,然后可以对其进行格式化。
假设你总是有PST或其他3个字母的时区结束,那么你可以通过简单地删除最后4个字符,即时间和date
=LEFT(A1,LEN(A1)-4)+0
如果你需要分别的时间或date,你可以分别使用MOD和INT,即时间
=MOD(LEFT(A1,LEN(A1)-4),1)
和date
=INT(LEFT(A1,LEN(A1)-4))
在任何情况下,格式化结果单元的时间/date视情况而定