首页 > 解决方案 > 具有特定开始和结束时间的 Google 日历活动创建

问题描述

基于从 Google Sheet 运行的 Google 脚本,我可以创建一个全天的活动,但在将活动设置为 1 小时时遇到了一些挑战。我确定这是一个非常愚蠢的问题,但也许有人可以告诉我在哪里添加对开始和结束时间/小时(不是日期)的引用?

这是我的代码:

var eventdate = '05/08/2020';
var eventstarttime = '10:00:00';
var eventaddress = 'test location';
 var endtime = eventtime + 3600000; // one hour duration
 var timeZone = SpreadsheetApp.getActive().getSpreadsheetTimeZone();
  var calendarid = 'XXXXXXX@group.calendar.google.com';
  var eventdetails = 'test details';
  
  var event = {
       location: eventaddress,
       summary: (var1 + ' related to ' + var2), // summary is built for two variables
    start: {
      date: Utilities.formatDate(eventdate, timeZone, 'yyyy-MM-dd');
   
    },
    end: {
      date: Utilities.formatDate(eventdate, timeZone, 'yyyy-MM-dd')
      },
        description: HTMLbody.getContent() // I'm using an HTML template to build a customs description based on other variables from the Sheet
  };
  event = Calendar.Events.insert(event, calendarid);

标签: google-apps-scriptgoogle-sheetsgoogle-calendar-api

解决方案


将日期和小时转换为日期时间:

let d='DD/MM/YYYY'.split('/');
let t='HH:MM:SS'.split(':');
let dt=new Date(d[2],d[1]-1,d[0],t[0],t[1],t[2]);

推荐阅读