格式化文本“00:00 +星期+date”作为date时间
我有一个文本列包含以下方式的date:
01:00 Friday 18/11/16
…但是,当我格式化列作为date,时间或自定义,现有的单元格不格式化。
我也试过=DATEVALUE(A2)
但是它返回一个#VALUE!
错误。
你不能用excelparsing一个非标准格式的date。 此外, DATEVALUE
将从该值中删除时间。
你可以做的是分开date和时间,分别parsing和添加它们:
=DATEVALUE(RIGHT(A1, LEN(A1)-FIND(" ", A1, FIND(" ", A1)+1))) + TIMEVALUE(MID(A1, 1, FIND(" ", A1)-1))
如果date和时间的长度是固定的,则可以将FIND
分别replace为8和5的长度。
为了从这个单元获得时间:
=LEFT(A2,5)
从这个单元格获取date:
=RIGHT(A2,8)
要从这个单元获取星期几文本:
=RIGHT(LEFT(A2;LEN(A2)-9);LEN(LEFT(A2;LEN(A2)-9))-6)
或者,您可以使用date部分直接查找周日:
=TEXT(RIGHT(A2,8), "ddd") OR =TEXT(RIGHT(A2,8), "dddd")
并得到数字的工作日:
=WEEKDAY(RIGHT(A2,8))