【问题标题】:Google sheets date reformatting when inserting new row using ARRAYFORMULA使用 ARRAYFORMULA 插入新行时谷歌表格日期重新格式化
【发布时间】:2020-04-29 17:59:44
【问题描述】:

我有一个 Google 表格,其中有一列日期看起来像这样。

22/04/2020 09:01:24
22/04/2020 09:05:54
22/04/2020 09:17:06
22/04/2020 10:04:48
22/04/2020 21:05:26

这些日期需要格式化为YYYY-MM-DDD 才能正确导入另一个系统。所以我决定添加另一列,找到日期片段并创建一个有效日期。这个函数是。

=MID(A1,7,4)&"-"&MID(A1,4,2)&"-"&MID(A1,1,2)

这会产生正确的日期格式,例如2020-04-16

现在,另一个向此电子表格添加行的过程,发生这种情况时,公式不会复制到新创建的单元格中。我读到了ARRAYFORMULA,所以在第一行我添加了以下内容。

=ARRAYFORMULA({"Submitted at";IF(ROW(A2:A),MID(W2,7,4)&"-"&MID(W2,4,2)&"-"&MID(W2,1,2),"")})

虽然这解决了公式未被复制的一个问题,但它现在只显示每一行的第一个日期,例如

2020-04-16
2020-04-16
2020-04-16
2020-04-16
2020-04-16
2020-04-16

我认为这可能与相对单元格引用有关?我对下一步该做什么甚至可能是什么问题感到有点困惑。我希望能理解我哪里出错了(或者更简单的重新格式化日期的解决方案)

【问题讨论】:

    标签: date google-sheets spreadsheet


    【解决方案1】:

    将这些 W2 更改为 W2:W

    你也可以试试这个更简单的公式:

    =ARRAYFORMULA({"Submitted at";IF(W2:W="",,TEXT(W2:W,"yyyy-mm-dd"))})
    

    【讨论】:

    • @Tom 不客气。希望您在寻求帮助之前没有花太长时间 :)
    猜你喜欢
    • 1970-01-01
    • 2015-08-05
    • 1970-01-01
    • 2019-06-15
    • 2014-12-18
    • 1970-01-01
    • 1970-01-01
    • 2012-06-22
    • 2020-11-16
    相关资源
    最近更新 更多