【问题标题】:Changing the Color of the Events in Google Calendar by Checking Google SpreadSheet Column with Values "YES" to green & "NO" to red通过检查 Google SpreadSheet 列,将值“YES”更改为绿色,“NO”更改为红色,更改 Google 日历中事件的颜色
【发布时间】:2021-09-22 10:11:11
【问题描述】:

以下代码完美运行,现在我需要有条件地更改日历事件的颜色。我是这种编码的新手。任何人都可以为我编辑此代码......

function CreateEvent() {
  var sh=SpreadsheetApp.getActiveSheet();
  //var calendarId = spreadsheet.getRange('***<LINKTOCELLTHATHASCALENDARID>***').getValue();
  var eventCal = CalendarApp.getCalendarById('YOUR_CALENDAR_ID');
  var drg=sh.getRange(2,1,sh.getLastRow()-1,7);
  var dA=drg.getValues(); 
  var crg=sh.getRange(2,6,sh.getLastRow()-1,1);//save that event was created in column G
  var cA=crg.getValues();
  for (i=0;i<dA.length;i++) {
    var shift=dA[i];
    var title=shift[0];
    var startTime=shift[1];
    var endTime=shift[2];
    //var guests=shift[3];
    var description=shift[3];
    var location=shift[4];  
    if(!shift[5]) {
      var event={'location': location,'description': description +',','sendInvites': 'True'}
      eventCal.createEvent(title, startTime, endTime, event)
      cA[i][0]="CREATED";//keeps this event from being created again
    }
  }
  crg.setValues(cA);
}

【问题讨论】:

    标签: google-apps-script google-sheets google-calendar-api


    【解决方案1】:

    假设值在 G 列中:

          var e = eventCal.createEvent(title, startTime, endTime, event);
          var b = shift[6];
          if (b === 'YES') { e.setColor(CalendarApp.EventColor.GREEN); }
          if (b === 'NO') { e.setColor(CalendarApp.EventColor.RED); }
    

    参考资料:

    setColor(color)

    Enum Color

    【讨论】:

    • 非常感谢,它有效。
    猜你喜欢
    • 1970-01-01
    • 2016-03-16
    • 2021-10-26
    • 1970-01-01
    • 2017-08-19
    • 2018-12-17
    • 2021-06-15
    • 1970-01-01
    • 2016-08-27
    相关资源
    最近更新 更多