【问题标题】:How can i change "-infinity" to today's date in Google Data Studio or Google Sheets?如何在 Google Data Studio 或 Google Sheets 中将“-infinity”更改为今天的日期?
【发布时间】:2021-06-02 23:02:49
【问题描述】:

我有一个包含不同日期的文本字段和包含-infinity(表示今天的日期)的单元格。

如何在 Google Data Studio 或 Google 表格中将-infinity 更改为今天的日期,以及如何将单元格从文本更改为日期?

下图包含带有日期和-infinity 的列。

【问题讨论】:

  • Bob,请包含指向包含您图片中显示的数据的示例电子表格的链接,确保将链接的共享权限设置为“知道链接的任何人...”和“编辑”。否则,我们甚至需要在开始测试解决方案之前手动将您的数据输入到我们自己的工作表中;这将阻碍您及时获得您正在寻求的帮助。从概念上讲,我知道如何解决它。但是分享一个未经检验的公式既没有效果也没有效率。
  • 您好 Erik,谢谢您回答我的问题。 docs.google.com/spreadsheets/d/…

标签: google-sheets google-data-studio


【解决方案1】:

除了上一个答案中已经给出的公式之外,您还可以使用 Apps Script 来完成您的任务。

应用脚本版本

您必须转到工具 > 脚本编辑器并使用下面的代码循环遍历A 列并且每当遇到-infinity 值时,它用当前日期替换它。

function replaceInfinity() {
  let ss = SpreadsheetApp.getActiveSheet();
  let validUntil = ss.getRange("A2:A").getValues();
  for (let i=0; i<validUntil.length; i++) 
    if (validUntil[i][0] == "-infinity") 
      ss.getRange(i+2,1).setValue(new Date());
}

之前

之后

参考

【讨论】:

    【解决方案2】:

    既然您已经添加了一个电子表格,我复制了您的原始数据表并在 B1 中添加了一个处理公式:

    =ArrayFormula({"valid_until V2";IF(A2:A="";;IFERROR(VALUE(REGEXEXTRACT(A2:A;"\S+"))+VALUE(REGEXEXTRACT(A2:A;"\s([^/./+]+)"));DATEVALUE("1/1/2050")))})

    这个数组公式生成 B 列的所有结果,包括标题(您可以更改为任何您喜欢的内容)。

    我处理了您的“无限期”日期,将其显示为 2050 年 1 月 1 日的真实日期——这个日期足够远,基本上可以达到与“无到期日”相同的目的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-04
      • 2022-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多