Скрипт Google Apps - срок действия доски объявлений - PullRequest
0 голосов
/ 28 января 2020

Я строю доску событий. Я хочу, чтобы по истечении срока действия событий на доске событий они автоматически перемещались на скрытый лист в том же формате.

Макет на моей «Доске событий»:

Subject | Start Date | Start Time | End Date | End Time | All Day Event | Description | Location | Private | Free | No Approval Required

Скрытый лист называется Expired Events и имеет тот же макет, что и доска событий.

Возможно ли это? Заранее спасибо за любую помощь:)

1 Ответ

1 голос
/ 29 января 2020

Переместить просроченные события на другой лист

function hideExpiredEvents() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('Events Board');
  var exsh=ss.getSheetByName('Expired Events');
  var sr=2;
  var rg=sh.getRange(sr,1,sh.getLastRow()-sr+1,sh.getLastColumn());
  var vA=rg.getValues();
  var dt=new Date();
  var  d=0;//deleted row counter
  var today=new Date(dt.getFullYear(),dt.getMonth(),dt.getDate(0)).valueOf();
  for(var i=0;i<vA.length;i++) {
    if(new Date(vA[i][3]).valueOf()<today) {
      exsh.appendRow(vA[i]);//move to bottom of expired events
      sh.deleteRow(i+sr-d++);//increment deleted row counter
    }
  }
}

Отредактировано

...