.getGuestList 返回“EventGuest”而不是与会者列表

问题描述 投票:0回答:1

我尝试使用这些论坛上提供的代码修复以下脚本,但到目前为止没有任何效果,我正在使用以下脚本创建日历上所有会议的列表,但它不会显示来宾:

function importGoogleCalendar() { 
  var sheet = SpreadsheetApp.getActiveSheet();
  var calendarId = sheet.getRange('B1').getValue().toString(); 
  var calendar = CalendarApp.getCalendarById(calendarId);
 
  // Set filters
  var startDate = sheet.getRange('B2').getValue();
  var endDate = sheet.getRange('B3').getValue();
  var searchText = sheet.getRange('B4').getValue();
 
  // Print header
  var header = [["Title", "Description", "Start", "End", "Ubicación", "Participantes"]];
  var range = sheet.getRange("A6:F6");
  range.setValues(header);
  range.setFontWeight("bold")
 
  // Get events based on filters
  var events = (searchText == '') ? calendar.getEvents(startDate, endDate) : calendar.getEvents(startDate, endDate, {search: searchText});
 
  // Display events 
  for (var i=0; i<events.length; i++) {
    var row = i+7;
    
    var details = [[events[i].getTitle(), events[i].getDescription(), events[i].getStartTime(), events[i].getEndTime(), events[i].getLocation(), events[i].getGuestList(), ]];
      
    range = sheet.getRange(row,1,1,6);
    range.setValues(details);
 
    // Format the Start and End columns
    var cell = sheet.getRange(row, 3);
    cell.setNumberFormat('mm/dd/yyyy hh:mm');
    cell = sheet.getRange(row, 4);
    cell.setNumberFormat('mm/dd/yyyy hh:mm');

   
  }
}
google-apps-script google-sheets events
1个回答
0
投票

检查每位客人的客人状态以获取出席者

更改此:

var details = [[events[i].getTitle(), events[i].getDescription(), events[i].getStartTime(), events[i].getEndTime(), events[i].getLocation(), events[i].getGuestList(), ]];
  

对此:

var details = [[events[i].getTitle(), events[i].getDescription(), events[i].getStartTime(), events[i].getEndTime(), events[i].getLocation(), events[i].getGuestList().filter(g => g.getGuestStatus() == CalendarApp.GuestStatus.YES), ]];
  
© www.soinside.com 2019 - 2024. All rights reserved.