Google Таблицы · 22.11.2021 0

Google Таблицы. Урок 122-2. Работаем с Google Calendar. Как экспортировать данные в календарь

Продолжаем работать с Гугл календарь.

Прошлый урок был посвящен импорту записей из Гугл календаря.

В этом уроке по Гугл таблицам мы поговорим об экспорте данных в Гугл календарь. Экспортировать данные в Google Calendar достаточно просто. Мы напишем небольшой скрипт для экспорта данных из электронной таблицы в гугл календарь.

Вы можете скачать файл со скриптом для экспорта данных в Гугл календарь по ссылке

https://docs.google.com/spreadsheets/d/15FsNgRsaRJ3hcEnRuamSD4S_TM9ErDVDU7Ztj0cKCso/edit?usp=sharing

Обратите внимание, что нужно обязательно сохранить копию моего файла, а так-же поменять логин от своего календаря

Не забудьте в скрипте поменять ID календаря Гугл

Посмотрите видео, в котором я рассказываю про экспорт данных в Google Calendar.

Скрипт, который мы используем для экспорта данных

function calendarexp() {

var cal = CalendarApp.getCalendarById(“howeasier@gmail.com”);

var spreadsheet = SpreadsheetApp.getActive();

var teklist = spreadsheet.getSheetByName(‘Лист2’);

var table = SpreadsheetApp.getActiveSpreadsheet().setActiveSheet(teklist);

var dlinna = table.getLastRow(); 

for (var i=10; i<dlinna+1;i++){

var title = table.getRange(i,3).getValue();

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

var datk = 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 calendarexp() { – начало функции, ее описание

var cal = CalendarApp.getCalendarById(“howeasier@gmail.com”); – связываем переменную cal с нашим календарем. Вместо howeasier@gmail.com нужно указать адрес своего, нужного, календаря

var spreadsheet = SpreadsheetApp.getActive(); – присваиваем переменной имя открытой книги с таблицей

var teklist = spreadsheet.getSheetByName(‘Лист2’); – назначаем переменной имя листа, с которым нужно работать. Тот лист с которого будут браться данные для экспорта

var table = SpreadsheetApp.getActiveSpreadsheet().setActiveSheet(teklist); – назначаем (активируем) нужный нам лист

var dlinna = table.getLastRow(); – назначаем переменной число, равное количеству заполненных строк в нашей таблице. т.е. определяем номер последней строки, в которой есть данные

for (var i=10; i<dlinna+1;i++){ – Назначаем цикл от 10 (т.к. в нашем примере данные для записи в календарь начинаются с 10-ой строки) до последней заполненной строки (ее номер мы определили на предыдущем этапе)

var title = table.getRange(i,3).getValue(); – берем данные из i-той строки и 3-его столбца и присваиваем переменной (Название мероприятия)

var datn = table.getRange(i,1).getValue(); – берем данные из i-той строки и 1-ого столбца и присваиваем переменной (Время начала мероприятия)

var datk = table.getRange(i,2).getValue(); – берем данные из i-той строки и 2-ого столбца и присваиваем переменной (Время окончания мероприятия)

var mesto = table.getRange(i,4).getValue(); – берем данные из i-той строки и 4-ого столбца и присваиваем переменной (Место проведения)

var primech = table.getRange(i,5).getValue(); – берем данные из i-той строки и 5-ого столбца и присваиваем переменной (Примечания)

cal.createEvent(title,datn,datk,{location:mesto,description:primech}); – Используем функцию создания в календаре нового события. Передаем основные (обязательные) параметры: название, время начала, время конца. Далее, после запятой и в фигурных скобках, следуют вспомогательные (не обязательные) параметры: место проведения, примечания.

} – Закрываем цикл. Цикл у нас будет последовательно брать данные из каждой строки (в нашем случае начиная с 10-ой и до конца таблицы, создавать новые мероприятия. Как таблица будет закончена цикл будет окончен.

} – признак окончания нашей функции. НЕ ЗАБЫВАЙТЕ ставить закрывающие фигурные скобки