【问题标题】:Converting mmyy into a useable date将 mmyy 转换为可用日期
【发布时间】:2015-06-05 12:32:54
【问题描述】:

我的问题与这个问题非常相似,但对于 Excel:how do I convert mmyy to last day of month in netezza 或这个:Create a date from Credit Card expire in MMYY format

基本上我有一列填满了写为 mmyy 的日期,即

0215
0215
0215
0315
0315

该列已保存为数据类型:“特殊”。

如何将这些数据转换为可用的格式?我不介意我们是否将其放入 dd/mm/yyyy 并使用该月的第一天或最后一天,这很好。有没有我可以使用的 Excel 函数,或者这是我必须在 VBA 中做的事情,如果有,怎么做?

【问题讨论】:

  • 我知道单元格显示的是 0215,但是如果您查看公式栏中,您看到的是 0215 还是 215我>?是否要更改单元格中的值或使用日期值创建另一列?你想要一个月的第一天还是最后一天?选择一个。
  • 看到215,新栏目和第一

标签: vba date excel excel-formula


【解决方案1】:

使用这个

=DATEVALUE("01/"&LEFT(A1;2)&"/20"&RIGHT(A1;2))

不要忘记将“B”列的“单元格格式”更改为“日期”

【讨论】:

    【解决方案2】:

    “日期”从 A2 开始,在右侧未使用的列中使用此公式,

    =DATE(20&RIGHT(A2, 2), LEFT(TEXT(A2, "0000"), 2), 1)
    

    根据需要填写。您必须格式化为日期,否则您将收到原始日期值,例如 42064

    如果您需要月末,请将月份添加1并将日期更改为0,例如,

    =DATE(20&RIGHT(A2, 2), LEFT(TEXT(A2, "0000"), 2)+1, 0)
    

    【讨论】:

      【解决方案3】:

      30 个字符:

      =1*REPLACE("1/"&A1,5,1,"/201")
      

      根据相关日期,20 可能是多余的。

      【讨论】:

      • 为简洁起见加分,但十几个额外的字符将防止 2150215 例如=1*REPLACE("1/"&TEXT(A1, "0000;@"),5,0,"/20")。我的 m/d/yy 区域系统还将 OP 的第一个样本值解释为 02-Jan-2015。对=1*REPLACE(TEXT(A1, "0000;@"),3,0,"/1/20") 的小改动解决了区域问题。
      猜你喜欢
      • 2020-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-29
      • 1970-01-01
      相关资源
      最近更新 更多