关于应用公式
=IFERROR(DATE(RIGHT(A1,4),MID(A1,4,2),LEFT(A1,2)),"-")
对于30/09/0201(A1中的文本值),我期望0201-09-30,但Excel返回2101-09-30。如何解决这个问题?
30/09/0201
0201-09-30
2101-09-30
zbq4xfa01#
正如OP所提到的,在回答中添加注解的解决方案:
·单元格B1中使用的公式
=IFERROR(TEXTJOIN("-",,RIGHT(A1,4),MID(A1,4,2),LEFT(A1,2)),"-")
OP中使用的公式,不会工作,因为在Excel中日期从January 1, 1900开始,因此使用TEXTJOIN()可以实现所需的输出。
January 1, 1900
j9per5c42#
这是按照the documentation of DATE的行为:
DATE
年份必填。year参数的值可以包括一到四位数字。Excel根据计算机使用的日期系统解释年份参数。默认情况下,Microsoft Excel for Windows使用1900日期系统,这意味着第一个日期是1900年1月1日。
提示:使用四位数作为年份参数,以防止不必要的结果。例如,“07”可能意味着“1907”或“2007”。四位数年份可防止混淆。
你的年份是201,所以它福尔斯属于第一类--加上1900,给予一个值2101。
2条答案
按热度按时间zbq4xfa01#
正如OP所提到的,在回答中添加注解的解决方案:
·单元格B1中使用的公式
OP中使用的公式,不会工作,因为在Excel中日期从
January 1, 1900
开始,因此使用TEXTJOIN()可以实现所需的输出。j9per5c42#
这是按照the documentation of
DATE
的行为:年份必填。year参数的值可以包括一到四位数字。Excel根据计算机使用的日期系统解释年份参数。默认情况下,Microsoft Excel for Windows使用1900日期系统,这意味着第一个日期是1900年1月1日。
提示:使用四位数作为年份参数,以防止不必要的结果。例如,“07”可能意味着“1907”或“2007”。四位数年份可防止混淆。
你的年份是201,所以它福尔斯属于第一类--加上1900,给予一个值2101。