gpt4 book ai didi

javascript - 在谷歌电子表格中连接日期和时间

转载 作者:数据小太阳 更新时间:2023-10-29 06:01:58 24 4
gpt4 key购买 nike

我有一个脚本可以将电子表格中的事件导入到日历中:

function caltest1() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; // First row of data to process
var numRows = 3; // Number of rows to process
var dataRange = sheet.getRange(startRow, 1, numRows, 5);
var data = dataRange.getValues();
var cal = CalendarApp.getDefaultCalendar();
for (i in data) {
var row = data[i];
var title = row[0]; // First column
var desc = row[1]; // Second column
var tstart = row[2];
var tstop = row[3];
var loc = row[4];
//cal.createEvent(title, new Date("March 3, 2010 08:00:00"), new Date("March 3, 2010 09:00:00"), {description:desc,location:loc});
cal.createEvent(title, tstart, tstop, {description:desc,location:loc});
}
}

如果我的电子表格包含如下数据,脚本可以正常工作:

Title      Description    Start               Stop                  Channel
Mr Dear no drinks 5/6/2014 20:55:00 5/6/2014 21:57:00 what ever

但如果我创建自己的日期 =CONCATENATE($D4, "",$G4),它就不起作用了,因为 D4 有一个日期,G4 有时间组合成一个单元格日期和时间。我想是因为它感觉到连接会创建纯文本而不是时间格式,但我该如何修复它?

最佳答案

在电子表格中,日期的 native 值是一个整数,表示自 1899 年 12 月 31 日以来的天数,时间是一个十进制值,它是一天的小数(例如,6 小时 = 1/4 天,0.25天)。

因此,当您在电子表格中添加 DATE+TIME(整数+小数)时,您会得到一个带时间的完整日期。

所以答案(正如您在对其他答案的评论中注意到的那样)在逻辑上是 ADD 这两个值。这实际上就是电子表格那样构建的原因! (以便于使用日期和时间)

在新列中使用公式 =D2+E2,您将获得可直接在 JavaScript 中使用的完整日期对象。

在 Javascript 中,日期和时间是相同的对象,没有没有日期的时间对象和没有时间的日期:它们的 native 值是从 1970 年 1 月 1 日午夜开始计算的毫秒数(这是一个整数)。

关于javascript - 在谷歌电子表格中连接日期和时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23508261/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com