根据月份名称获取date值

我的情况如下:

  • 单元格A1 – 包含当前月份的名称,例如“十月”
  • 单元格A2 – 包含当前年份的值,例如“2014”
  • 单元格A3 – 包含给定date的值,例如“22”

我想用一个公式来填充A3,它会给出2014年10月22日的值,并将其格式化为一个date,以便我可以在其他单元格中执行比较和计算 – 所以沿着22 + A1 + A2的线。 我试过使用CONCATENATE函数,但是这不会让我格式化单元格作为date。

是甚至有可能使用标准的Excelfunction?

您正在寻找DATEVALUEfunction。 它可以将月份名称转换为数字dateexpression式,然后可以将其格式化为date(在下例中为dd/mm/yyyy )。

 =DATEVALUE(A3 & " " & A1 & " " & A2) 

在这里输入图像说明

作为奖励,如果A1包含简单的月份名称,即1月,2月,3月等,这也将起作用。

我只是做了一些testing,这表明你也可以完全删除空格分隔符:

 =DATEVALUE(A3&A1&A2) 

实际上,只要使用--强制Excel将连接string作为数值处理即可!

 =--(A3&A1&A2) 

到目前为止,我的testing还没有发现任何实例--不能像DATEVALUE一样工作。 让我想知道DATEVALUE是什么。

尝试这个:

=DATE(A2,MATCH(A1,{"January","February","March","April","May","June", "July","August","September","October","November","December"},0),A3)

你也可以使用这个公式

=(A1&A2)+A3-1

以要求的date格式格式结果单元格