这是我的代码:
function calEvent(){
var arrivalDate = "06/10/2013";
var departureDate = "06/18/2013";
var start = new Date(arrivalDate);
var end = new Date(departureDate);
var cal = CalendarApp.getCalendarById('id487g3esn088a00omqa99ugv0@group.calendar.google.com');
cal.createEvent('Apollo 11 Landing',start,end);
}
当我运行它时,它将在正确的日历中创建事件,但它将仅从6月10日到6月17日。我需要该活动涵盖6月10日至6月18日。
我已检查时区设置,电子表格,脚本和日历都在同一时区(山地时间GMT-7)
如何在正确的日期设置这个看似简单的代码?我已经尝试了几种日期格式(utilities.formatDate),但似乎无法获得正确的格式。
提前致谢。
答案 0 :(得分:1)
How to use timeZone of calendar to set timeZone for date object
我在几周前提出了上述问题,并提出了一个有效的解决方案。不确定它是否是最好的,但你可以查看它是否有帮助。在为我的问题制定解决方案时,我注意到了几件事。该脚本肯定使用脚本时区来创建日期对象。但是当它发布到日历时,它会将执行者默认日历时区的日期调整为您正在编写的日历的时区。因此,如果用户的默认日历时区与正在写入的日历不同,您将获得各种疯狂的时间
所以上面问题中列出的函数gasTimezoneOffset()就是我的解决方案。
希望这有帮助。