谷歌脚本谷歌工作表日历TypeError:无法在对象日历中找到函数createEvent。 (第18行,文件“代码”) [英] Google script google sheet to calendar TypeError: Cannot find function createEvent in object Calendar. (line 18, file "Code")

查看:114
本文介绍了谷歌脚本谷歌工作表日历TypeError:无法在对象日历中找到函数createEvent。 (第18行,文件“代码”)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图创建一个Google脚本,它将根据Google表格中的单元格内的信息创建日历活动。我已经到了一切都被标记和标记的地步,但是出现了一个错误:


TypeError:找不到函数createEvent in对象日历。 (第18行,文件代码)


以下是我写的代码:

 函数calInsert(){
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; //第一行数据处理
var numRows = 25; //要处理的行数
var dataRange = sheet.getRange(startRow,2,numRows,9);
var data = dataRange.getValues();
var cal = CalendarApp.getCalendarsByName(EC Calendar);
for(i in data){
var row = data [i];
var title = row [1]; //第一列
var tstart = row [2]; //第二列
var tstop = row [3];
var desc = row [4];
var loc = row [5];
var cmmail = row [6];
var leamail = row [7];

var event = cal.createEvent(title,new Date(tstart),new Date(tstop),{description:desc,location:loc,guests:cmmail,guests:leamail});

}
}



任何帮助,您可以提供将不胜感激。

解决方案

var cal = CalendarApp.getCalendarsByName(EC Calendar);
这会为您提供一个具有该名称的日历数组。更改为:



var cal = CalendarApp.getCalendarsByName(EC Calendar)[0]; //获取正确的日历
这给你带有名字的第一个日历。我尝试了下面的代码:

 函数calInsert(){
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; //第一行数据处理
var numRows = 2; //要处理的行数
var dataRange = sheet.getRange(startRow,1,numRows,5);
var data = dataRange.getValues();
var cal = CalendarApp.getCalendarsByName(calendar ID)[0];
for(i in data){
var row = data [i];
var title = row [0]; //第一列
var tstart = row [2]; //第二列
var tstop = row [3];
Logger.log(tstop);
var desc = row [1];
var loc = row [4];
// var cmmail = row [6];
// var leamail = row [7];

cal.createEvent(title,new Date(tstart),new Date(tstop),{description:desc,location:loc});


$ / code $ / pre

我可以在我的日历中创建事件。如果需要,您可以发送cmmail和leamail到createEvent。


I have attempted to create a google script that will create calendar events based on information within cells in google sheets. I have gotten to the point where everything is labeled and marked, but an error is occuring that states:

TypeError: Cannot find function createEvent in object Calendar. (line 18, file "Code")

Here is the code I have written:

function calInsert() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = 25;   // Number of rows to process
  var dataRange = sheet.getRange(startRow, 2, numRows, 9);
  var data = dataRange.getValues();
  var cal = CalendarApp.getCalendarsByName( "EC Calendar" );
  for (i in data) {
    var row = data[i];
    var title = row[1];  // First column
    var tstart = row[2]; // Second column
    var tstop = row[3];
    var desc = row[4];       
    var loc = row[5];
    var cmmail = row[6];
    var leamail = row[7];

  var event = cal.createEvent(title, new Date(tstart), new Date(tstop), {description:desc,location:loc,guests:cmmail,guests:leamail}); 

} }

Any help you can provide would be appreciated.

解决方案

var cal = CalendarApp.getCalendarsByName("EC Calendar"); This gives you an array of calendars with that name. Change this to:

var cal = CalendarApp.getCalendarsByName("EC Calendar")[0]; //Gets the correct calendar This gives you the first Calendar with the name. I tried the below code:

function calInsert() {
 var sheet = SpreadsheetApp.getActiveSheet();
 var startRow = 2;  // First row of data to process
 var numRows = 2;   // Number of rows to process
 var dataRange = sheet.getRange(startRow, 1, numRows, 5);
 var data = dataRange.getValues();
 var cal = CalendarApp.getCalendarsByName( "calendar ID" )[0];
 for (i in data) {
    var row = data[i];
    var title = row[0];  // First column
    var tstart = row[2]; // Second column
    var tstop = row[3];
    Logger.log(tstop);
    var desc = row[1];       
    var loc = row[4];
   //var cmmail = row[6];
   //var leamail = row[7];

   cal.createEvent(title, new Date(tstart), new Date(tstop),     {description:desc,location:loc}); 
}
}

I am able to create event in my calendar. If needed, you can send cmmail and leamail to createEvent.

这篇关于谷歌脚本谷歌工作表日历TypeError:无法在对象日历中找到函数createEvent。 (第18行,文件“代码”)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆