将输入的日期转换为 Excel 中的日期格式的单元格

将输入的日期转换为 Excel 中的日期格式的单元格

我们有一个 Excel 文件,其中有一列名为“日期”,里面有一些文本,例如 2016 年 2 月 28 日。

我们怎样才能将其格式化为 28/02/2016?我尝试使用格式化单元格功能,但没有任何变化,我也尝试使用 DATEVALUE 函数,但它只显示 #VALUE!而没有有关错误的详细信息?

我以为这是 EXCEL 可以为我们转换的东西,但如果有人能告诉我如何操作,我将不胜感激!如果有帮助的话,我们正在使用最新版本的 Mac 版 Excel。

答案1

您需要从日期末尾删除“th”、“rd”、“st”或“nd”后缀。

如果所有日期都采用您指定的相同格式28th February 2016,那么您可以使用如下公式将其转换为日期值,例如,如果日期在 A1 中,则在另一个单元格/列中使用:

=DATEVALUE(SUBSTITUTE(A1,MID(A1,FIND(" ",A1)-2,2),""))

然后,当您应用Format Cells->Date(以及您想要的任何格式)时,它将按照您的要求显示。

上述公式的解释

目标是用空字符串替换 th/rd/st/nd,例如“1st”、“2nd”、“3rd”、“4th”等数字。并且substitute可以做到这一点,但需要告知要替换什么字符串。

为了提取 th/rd/st/nd,我使用了MID(A1,FIND(" ",A1)-2,2)。此公式找到第一个空格,向后两个空格并取两个字符。这两个字符应该是 th/rd/st/nd 之一。

现在我们有了提取要替换的字符串的方法,我们将其输入到 中SUBSTITUTE,以获得可识别的日期字符串。
最后,(正如您已经知道的)使用DATEVALUE将其转换为可以格式化的实际日期。

相关内容