Google Sheet 时间线图的日期和时间格式错误
Google Sheet wrong date and time format for Timeline Graph
我将 Tasker 数据源导入 Google Sheet,但时间轴图表不起作用。
无法理解日期和时间的格式。
我的数据源格式是dd-MM-YYYY HH.mm
例如:
16-10-2020 00.40
但是GoogleSheet只看懂了dd/MM/YYYYHH:mm:ss
16/10/2020 00:35:00
See here
(第二张图,我把日期修改为16/10/202000:35:00,并且套用了Date and Time的格式,所以显示的是16-10-2020 00.35,除了让你迷惑之外没有任何用处)
我试过更改日期的格式,但它唯一能做的是:
转换现有的 16/10/2020 00:35:00 格式
至 16-10-2020 00.40
我要相反的
我对 Google 开发者感到厌倦和有点生气。我已经搜索了几个小时,我发现它很疯狂 Google Sheet 无法理解这种简单的格式。
有什么想法吗?
谢谢
请使用以下公式将您的值转换为日期
=ARRAYFORMULA(IF(A2:A5="",,--REGEXREPLACE(REGEXREPLACE(A2:A5,"-","/"),".",":")))
根据您的语言环境,您可能需要将 ,
更改为 ;
=ARRAYFORMULA(IF(A2:A5="";;--REGEXREPLACE(REGEXREPLACE(A2:A5;"-";"/");"\.";":")))
使用的函数:
已提供解决方案的替代方案
Google 表格公式
您可以使用此公式将 .
替换为 :
并将其向下拖动以将其应用于所有单元格:
=REPLACE(A1,14,1,":")
这将生成一个日期格式符合您要求的列。
Google Apps 脚本
您还可以使用 Apps Script 直接在 sheet.
中将所有 .
替换为 :
// Copyright 2020 Google LLC.
// SPDX-License-Identifier: Apache-2.0
function toDate() {
var ss = SpreadsheetApp.openById("SS_ID").getSheetByName("SHEET_NAME");
var range = ss.getRange(1,1,NO_OF_ROWS,1);
var values = range.getValues();
for (let i=1; i<values.length; i++)
ss.getRange(i, 1).setValue(new Date(values[i-1][0].toString().replace(/\./g, ":")));
}
上面的脚本还将值设置为 date.
类型
参考
我将 Tasker 数据源导入 Google Sheet,但时间轴图表不起作用。
无法理解日期和时间的格式。
我的数据源格式是dd-MM-YYYY HH.mm 例如: 16-10-2020 00.40
但是GoogleSheet只看懂了dd/MM/YYYYHH:mm:ss 16/10/2020 00:35:00
See here (第二张图,我把日期修改为16/10/202000:35:00,并且套用了Date and Time的格式,所以显示的是16-10-2020 00.35,除了让你迷惑之外没有任何用处)
我试过更改日期的格式,但它唯一能做的是: 转换现有的 16/10/2020 00:35:00 格式 至 16-10-2020 00.40
我要相反的
我对 Google 开发者感到厌倦和有点生气。我已经搜索了几个小时,我发现它很疯狂 Google Sheet 无法理解这种简单的格式。
有什么想法吗?
谢谢
请使用以下公式将您的值转换为日期
=ARRAYFORMULA(IF(A2:A5="",,--REGEXREPLACE(REGEXREPLACE(A2:A5,"-","/"),".",":")))
根据您的语言环境,您可能需要将 ,
更改为 ;
=ARRAYFORMULA(IF(A2:A5="";;--REGEXREPLACE(REGEXREPLACE(A2:A5;"-";"/");"\.";":")))
使用的函数:
已提供解决方案的替代方案
Google 表格公式
您可以使用此公式将 .
替换为 :
并将其向下拖动以将其应用于所有单元格:
=REPLACE(A1,14,1,":")
这将生成一个日期格式符合您要求的列。
Google Apps 脚本
您还可以使用 Apps Script 直接在 sheet.
中将所有.
替换为 :
// Copyright 2020 Google LLC.
// SPDX-License-Identifier: Apache-2.0
function toDate() {
var ss = SpreadsheetApp.openById("SS_ID").getSheetByName("SHEET_NAME");
var range = ss.getRange(1,1,NO_OF_ROWS,1);
var values = range.getValues();
for (let i=1; i<values.length; i++)
ss.getRange(i, 1).setValue(new Date(values[i-1][0].toString().replace(/\./g, ":")));
}
上面的脚本还将值设置为 date.
类型