【问题标题】:Excel formula: input just 4 digits excel converts to date format dd/mm/yyyyExcel 公式:只需输入 4 位 excel 转换为日期格式 dd/mm/yyyy
【发布时间】:2014-11-14 05:40:06
【问题描述】:

跟进这个早先的问题:Excel - Convert date from yymmdd to dd/mm/yy

我想只输入 4 位数字并将公式转换为日期。

例如,如果我输入值 1207,公式将转换为 12/07/2014,但如果我输入 0311,它将转换为 31/1/2014。

当我输入以“0”开头的日期(例如 0711)时,我不知道如何进行日期转换。

我使用的公式:

=LEFT(A2,2)&"/"&MID(A2,3,4)&"/2014"&RIGHT(A2,0)

查看下面突出显示的错误输出:

Input   Date converted          
1112    11/12/2014      
1503    15/03/2014      
2407    24/07/2014      
2912    29/12/2014       
0712    71/2/2014 <~~~~~~   should be 07/12/2014    
0311    31/1/2014 <~~~~~~   should be 03/11/2014    

【问题讨论】:

  • 对不起。我没有发布我正在使用的公式:( =LEFT(A2,2)&"/"&MID(A2,3,4)&"/2014"&RIGHT(A2,0)
  • 您所做的并没有错,但是现在您必须将单元格格式化为 dd/mm/yyyy。因此,最好使用 DATE 函数,它将为您格式化字符串为日期。因此无需将单元格格式化为日期。

标签: excel excel-formula


【解决方案1】:

您可以使用 Jerry 建议的公式。我有相同的公式:

=DATE(2014,RIGHT(A2,2),LEFT(A2,2))

但是,您需要确保您的输入是文本。 0712 应在 excel 中显示为 0712。即让您输入四位数字,那么只有上面的公式才有效。您可以在 0712 之前使用撇号将其转换为文本,输入 '0712 作为输入。

【讨论】:

  • 非常感谢 Paresh J。我已将列格式化为文本,公式可以正常工作。
  • @Paresh J 如果 Jerry 的答案需要修改,您可以在那里修改或提出建议,而不是创建一个新的答案。
  • @ZAT:你是对的!!!但我更喜欢创建我的答案,因为他可能同意也可能不同意我编辑的答案。
【解决方案2】:

我不确定您是如何编辑其他公式的,但它应该可以工作。无论如何,有一个适用于您的特定情况:

=DATE(2014, RIGHT(A2,2), LEFT(A2,2))

其中 A2 包含日期。


如果您的日期实际上是数字,那么如果数字长度不同,您可能需要使用条件来更改结果:

=IF(LEN(A2)=4, DATE(2014,RIGHT(A2,2),LEFT(A2,2)), DATE(2014,RIGHT(A2,2),LEFT(A2,1)))

【讨论】:

  • @ZAT 确实!我最初错误地认为它们是文本,因为我很少使用前导零的数字格式,并且由于我的工作性质,我实际上将我的数字转换为文本^^;
猜你喜欢
  • 1970-01-01
  • 2022-11-17
  • 2016-11-06
  • 2019-03-28
  • 2015-12-26
  • 1970-01-01
  • 2022-07-29
  • 1970-01-01
  • 2011-02-09
相关资源
最近更新 更多