【问题标题】:Convert Excel date to yyyymmdd format将 Excel 日期转换为 yyyymmdd 格式
【发布时间】:2014-07-03 07:35:11
【问题描述】:

注意:有问题问相反,我问的是如何将具有基础数值的原始 Excel 日期(例如,1997 年 5 月 27 日对应于 35577)转换为 yyyymmdd 格式。

我有一个 Excel 文件,最初是手动输入日期的。 Excel 将它们显示为日期,但正如您所知,它们具有数字基础值。即,在我上面给出的示例中,如果您将此日期导出到任何其他统计软件(即 Matlab 或 R)中,则该值将是基础数字对应物。

我需要做的是将这些“原始”Excel 日期转换为 yyyymmdd 格式,然后将它们导出到其他地方。

欢迎提出任何建议。

【问题讨论】:

    标签: excel matlab


    【解决方案1】:

    看看这是否适合你 -

    %// For demo couple of values are assumed, but these are the values 
    %// that you have got from excel file
    numerical_vals = [35577 ; 35579] 
    
    date_array = datevec(numerical_vals);
    date_array(:,1) = date_array(:,1)+1900;
    out = datestr(date_array,'yyyy/mm/dd')
    

    输出 -

    out =
    
    1997/05/27
    1997/05/29
    

    【讨论】:

    • 这很完美,正是我想要的!非常感谢,Divakar。
    【解决方案2】:

    首先,您应该检查计算机中的日期设置。 导航到:

    控制面板 -> 时钟和区域 -> 区域更改日期、时间或 数字格式 -> 附加设置 -> 日期

    Date formats (yyyy/MM/dd)下更改Short date,然后在两个窗口中应用它们并单击ok。重新启动excel,它应该可以工作了!

    如果还是不行,可以在excel中检查格式单元格,将单元格转换成日期。 另外,R 中有一个函数叫做 as.Date(x, format, tryFormats = c("%Y-%m-%d", "%Y/%m/%d") 也可以。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-22
      • 1970-01-01
      • 2018-10-27
      • 2015-05-23
      • 2017-12-02
      • 1970-01-01
      相关资源
      最近更新 更多