【问题标题】:Google Sheets convert Text String cell into Date + Duration cellGoogle表格将文本字符串单元格转换为日期+持续时间单元格
【发布时间】:2018-05-14 12:16:52
【问题描述】:

我得到了一个 csv 文件,我将它导入到谷歌表格中。 我想计算两个“日期时间”组合字段之间的差异,它们现在是文本字段而不是“日期时间”字段。 在 5 月之前,它们是 DD.MM.YYYY 00:00 中的正确“日期时间”字段,Google 表格可以使用这些字段为我计算持续时间的差异。 “更新 - 创建 = 差异”。现在它是一个格式错误的文本字段,自动转换或手动设置不起作用。我在这里处理数百个数据集。所以通过手工有点粗糙......

DATEVALUE 函数对我不起作用。这是我能找到的唯一相关的东西。

Created         Updated         Difference
07/May/18 06:54 07/May/18 07:14 #VALUE!
07/May/18 07:19 07/May/18 07:28 
07/May/18 07:02 07/May/18 07:56 

它的外观示例(斜线或点无关紧要):

Created         Updated         Difference
07.May.18 06:54 07.May.18 07:14 00:20
07.May.18 07:19 07.May.18 07:28 00:09
07.May.18 07:02 07.May.18 07:56 00:54

错误代码:

Error
Function MINUS parameter 1 expects number values. But '07/May/18 07:14' is a text and cannot be coerced to a number.

感谢您的帮助。

【问题讨论】:

  • 尝试另一个区域:文件 > 电子表格设置...将区域设置更改为美国。
  • 不幸的是,这不起作用。我仍然收到错误:错误函数 MINUS 参数 1 需要数字值。但是 '07/May/18 07:14' 是文本,不能强制转换为数字。
  • 我对此进行了更新。 Google 表格中的正确格式称为“日期时间”。

标签: date text google-sheets duration


【解决方案1】:

此公式会将月份名称转换为数字 [1-12]:

=REGEXREPLACE(A1; "[A-Za-z]+"; "" & VLOOKUP(REGEXEXTRACT(A1;"Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec"); {"Jan"\1;"Feb"\2;"Mar"\3;"Apr"\4;"May"\5;"Jun"\6; "Jul"\7;"Aug"\8;"Sep"\9;"Oct"\10;"Nov"\11;"Dec"\12};2;))*1

结果是一个序列号:43227,2875

转换后,您可以计算持续时间。

【讨论】:

    【解决方案2】:

    所以问题实际上出在语言设置上。 当我导入数据时,我必须先将工作表设置为美国。然后我可以使用它。之后我可以将其切换回 DE,它会自动转换。

    【讨论】:

      猜你喜欢
      • 2013-04-11
      • 1970-01-01
      • 1970-01-01
      • 2015-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多