Задать вопрос
@marisha_marisha

Как в гугл таблице добавить столбец с указанием через сколько дней нужно добавить уведомление в гугл календаре?

Есть гугл таблица которая выгружает в гугл календарь события, из гугл календаря так же можно выгрузить данные в гугл таблицу.
Вопрос: Как в гугл таблице добавить столбец в котором я указываю количество дней через сколько должно прийти уведомление в гугл календарь о начале выполнения задачи. Например: дата начала 10.01.2026, дата окончания 15.01.2026. Я добавляю столбец например ставлю в нем 3 и у меня в гугл календаре придет уведомление 12.01.2026 что нужно начинать выполнять задачу. Для следующего события я могу поставить например 5 дней и т.д.

Мой скрипт:

function calendarimp () {
  var cal=CalendarApp.getCalendarById("prohousekd@gmail.com");
  var spreadsheet = SpreadsheetApp.getActive();
 
  var teklist = spreadsheet.getSheetByName('Календарь');
  var table = SpreadsheetApp.getActiveSpreadsheet().setActiveSheet(teklist);
  spreadsheet.getRange('A5:E1000').activate();
spreadsheet.getActiveRangeList().clear({contentsOnly: true, skipFilteredRows: true});

  var datn = table.getRange(1,1).getValue();
  var datk = table.getRange(1,2).getValue();

  var dann = cal.getEvents(datn,datk);

  for (var i=0; i<dann.length;i++){
  
  var title = dann[i].getTitle();
  table.getRange(i+5,3).setValue(title);

   var vrn = dann[i].getStartTime();
  table.getRange(i+5,1).setValue(vrn);

   var vrk = dann[i].getEndTime();
  table.getRange(i+5,2).setValue(vrk);

    var loc = dann[i].getLocation();
  table.getRange(i+5,4).setValue(loc);

   var prim = dann[i].getDescription();
  table.getRange(i+5,5).setValue(prim);
var povtor = dann[i].isRecurringEvent();
table.getRange(i+5,6).setValue(povtor);

}
  
}


function calendarexp () {
var cal = CalendarApp.getCalendarById("prohousekd@gmail.com");
  var spreadsheet = SpreadsheetApp.getActive();
  var teklist = spreadsheet.getSheetByName('Календарь');
  var table = SpreadsheetApp.getActiveSpreadsheet().setActiveSheet(teklist);

var datn = table.getRange(1,1).getValue();
var datk = table.getRange(1,2).getValue();
var dann = cal.getEvents(datn,datk);

for (var i=0; i<dann.length;i++){

dann[i].deleteEvent();
}

var dlinna = table.getLastRow();
for (var i=5; i<dlinna+1;i++){

var title = table.getRange(i,3).getValue();
var datn = new Date(table.getRange(i,1).getValue());
var datk = new Date(table.getRange(i,2).getValue());

var mesto = table.getRange(i,4).getValue();
var primech = table.getRange(i,5).getValue();

cal.createEvent(title,datn,datk,{location:mesto,description:primech});

}

}

function openCalendar() {
  var url = "https://calendar.google.com/";
  
}

Дата начала Дата окончания Мероприятие Место Описание
  • Вопрос задан
  • 15 просмотров
Подписаться 1 Сложный Комментировать
Помогут разобраться в теме Все курсы
  • Академия Eduson
    Excel и Google-таблицы: тариф PRO
    1 месяц
    Далее
  • Skillfactory
    Мастер Google таблиц
    4 недели
    Далее
  • ProductStar × РБК
    Основы Google Sheets для аналитика
    1 месяц
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы