Libreoffice Calc:日期字符串到 date/time 值

Libreoffice Calc: date string to date/time values

我需要提取 'date string' 作为代表 date/time 数据的单独列。

 | A                        | B                 | C
-+--------------------------+-------------------+-----------------
1| Datetime String          | Date Value        | Time Value
2| Sat 09 Sep 2017 20:00 PM | =DATEVALUE(A2)    | =TIMEVALUE(A2)

以上函数DATEVALUETIMEVALUEreturn错误。我现在有点不知所措。

您可以尝试 =MID(A2,1,FIND(":",A2)-4) 作为日期值,=MID(A2,FIND(":",A2)-2,8) 作为时间值。

看起来日期字符串是固定宽度的,所以对单元格B2使用这个公式,它构建一个YYYY-MMM-DD格式的日期字符串,然后用DATEVALUE转换。

=DATEVALUE(MID(A2,12,4) & "-" & MID(A2,8,3) & "-" & MID(A2,5,2))

C2单元格的公式只需要提取时间,已经是合适的格式了。

=TIMEVALUE(MID(A2,17,5))

然后转到格式 -> 单元格,将 B2 格式化为日期,将 C2 格式化为时间。

以防万一其他人遇到 Cater Allen 的新导出格式:25Dec2020(即 DDMMMYYYY)在 CSV 导入过程中无法识别:

=DATEVALUE(NUMBERVALUE(MID(A2,6,4))&"-"&MID(A2,3,3)&"-"&NUMBERVALUE(MID(A2,1,2)))会把它变成YNAB可以识别的正确日期。

感谢您提出的问题和其他答案帮助我顺利到达那里。