1.Пример организации данных:
https://docs.google.com/spreadsheets/d/1Vx2P0pmdyW...
2.Скрипт который нужно поместить в "Код.gs" через меню Инструменты->Редактор скриптов:
function emailsend () //Отправляет e-mail при выполнении условия описанного в if
{
var sovpadenieDat = in_array(reminder (), perebor_dat());
if(sovpadenieDat > -1)
{
MailApp.sendEmail(
"example@mail.ru",
perebor_dat()[in_array(reminder (), perebor_dat())] + " тебе нужно " + vozvrat_temy()[in_array(reminder (), perebor_dat())],
'Привет! Это напоминание про дело которм тебе нельзя забывать.'
)
}
}
function reminder () //Прибавляет к текущей дате 3 дня. Возвращается не дата, а строка но ее сравнение с содержимым массива perebor_dat() прокатывает
{
var dates = new Date()
var reminderMonth = dates.getMonth()+1;
var reminderDate = dates.getDate() +3 ;
var reminderYear = '2015';
return reminderDate + "." + reminderMonth + "." + reminderYear;
}
function perebor_dat() //Возвращает массив отформатированных значений содержащихся на текущем листе в диапазоне A2:Z2. Проблема с возвратом значений из ячеек AA2, AB2 так как цикл проходит только по алфавиту
{
var kolonkaplus = [];
for (var i=65; i<=90; i++)
{
kolonkaplus.push(Utilities.formatDate(new Date(SpreadsheetApp.getActiveSheet().getRange(String.fromCharCode(i)+'2').getValues()), "GMT+3", "d.M.yyyy"));
}
return kolonkaplus;
}
function vozvrat_temy() //Возвращает массив отформатированных значений содержащихся на текущем листе в диапазоне A1:Z1. Проблема с возвратом значений из ячеек AA1, AB1 так как цикл проходит только по алфавиту
{
var kolonkaplus = [];
for (var i=65; i<=90; i++)
{
kolonkaplus.push(SpreadsheetApp.getActiveSheet().getRange(String.fromCharCode(i)+'1').getValues());
}
return kolonkaplus;
}
function in_array(value, array) //Проверяет массив на наличие в нем значения
{
for(var i = 0; i < array.length; i++)
{
if(array[i] == value) return i;
}
return -1;
}
3. В редакторе скриптов нужно установить треггер текущего проекта на то время в которое вы хотите чтобы вам приходила напоминалка.
4.
example@mail.ru
вместо этого устанавливаете свою почту.
var reminderDate = dates.getDate() +3
тройку меняете в зависимости от того за какой срок в сутках до даты события вам нужно отправлять напоминалку.
Обновления здесь:
https://github.com/mc-sim/GoogleDocs_uvedomlenie_o...
PS: С гитхабом только начинаю разбираться.