如何授权自定义功能使用Google日历?

时间:2019-08-29 20:26:59

标签: javascript google-apps-script google-sheets google-calendar-api custom-function

我正在尝试在Google表格中创建一个自定义函数,该函数会生成一个带有巴西假期的数组,以另一个公式自动执行该公式,该公式可计算考虑假期的数据间隔。但是这段代码正在生成该错误消息:

  

不允许脚本执行此操作。所需权限:(https://www.googleapis.com/auth/calendar || https://www.googleapis.com/auth/calendar.readonly || https://www.google.com/calendar/feeds)(第4行)。

我已经在Google API控制台中允许Calendar API并创建了凭据,但是我不知道是否需要在代码中使用它们,或者是否存在Google问题。

这是我尝试的代码:

function FERIADOS() {
  var cal = "pt.brazilian#holiday@group.v.calendar.google.com";
  var calendario = CalendarApp.getCalendarById(cal);

  var dtini = new Date('January 1, 2019 00:00:01 -0300');
  var dtfim = new Date('December 31, 2020 23:59:59 -0300');

  var eventos = calendario.getEvents(dtini, dtfim);

  for (var i = 1; i < eventos.length ; ++i) {
     var event = [];
     event[i] = eventos[i].getStartTime(); 
  }

  return event;
}

1 个答案:

答案 0 :(得分:3)

日历服务不是自定义功能可用的服务之一。阅读Guidelines for custom functionsUsing Apps Script Services