Size: a a a

Чат | Google Таблицы и скрипты

2019 May 11

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Переслано от Eugeny Namokonov
лови памятку
источник

SP

Stanislav Popovych in Чат | Google Таблицы и скрипты
@namokonov искренне благодарен! Нашел свою ошибку благодаря Вашей памятке!😉
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Stanislav Popovych
@namokonov искренне благодарен! Нашел свою ошибку благодаря Вашей памятке!😉
👍
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Жалко, что формулы разными цветами не раскрашиваются на скриншоте
источник

SP

Stanislav Popovych in Чат | Google Таблицы и скрипты
Еще раз спасибо большое! Хорошего Вам дня! 😊
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Stanislav Popovych
Еще раз спасибо большое! Хорошего Вам дня! 😊
Взаимно 👍
источник

С

Серж in Чат | Google Таблицы и скрипты
Добрый день, подскажите пожалуйста, где почитать информацию как из почты брать данные в таблицу.
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Переслано от Eugeny Namokonov
var SHEET_ID = '';
var SHEET_NAME = 'Лист1';

function getEmails_(q){
 var emails = [];
 var thds = GmailApp.search(q);
 for(var i in thds){
   var msgs = thds[i].getMessages();
   for(var j in msgs){
     var email = []
     msgs[j].markRead()
     email.push([msgs[j].getDate(), msgs[j].getFrom(), '[' + msgs[j].getSubject() + '] ' + msgs[j].getPlainBody()]);
   }
   emails = emails.concat(email)
 }
 return emails;
}


function appendAfter(range, array2d){
 range.clearContent()
 range.setValues(array2d);
}
 
 

function appendData_(sheet, array2d){
 array2d.length !== 0 ? sheet.getRange(sheet.getLastRow()+1, 1, array2d.length, array2d[0].length).setValues(array2d) : ''
}

function run(){
//Gmail Advanced search https://support.google.com/mail/answer/7190
 var array2d = getEmails_(query());
 if(array2d) {
   var ss = SpreadsheetApp.openById(SHEET_ID);
   var sheet = ss.getSheetByName(SHEET_NAME);
   if(!sheet) sheet = ss.insertSheet(SHEET_NAME);
   appendData_(sheet, array2d);
 }
}


function query(){
 var ss = SpreadsheetApp.openById(SHEET_ID);
 var sheet = ss.getSheetByName(SHEET_NAME)
 var val = sheet.getRange("b1").getValue()

 return 'in:inbox after:'+ formatDate(val) + ' is:unread {}'

}
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Переслано от Павел Мрыкин...
важно в данной реализации нужно включить gmail API
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Переслано от Eugeny Namokonov
https://support.google.com/mail/answer/7190 вот здесь можно почитать про запросы к gmail ящику (то есть про то, что нужно писать в query)
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Серж смотрите примеры по этому классу в туториале и в интернетх - там все достаточно просто
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Выше - пример скрипта.
источник

С

Серж in Чат | Google Таблицы и скрипты
Ок спасибо
источник

С

Серж in Чат | Google Таблицы и скрипты
по хоже тут я вообще ничего не понимаю, у кого есть возиможность и время показать как надо ?
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Серж
по хоже тут я вообще ничего не понимаю, у кого есть возиможность и время показать как надо ?
Скрипт запускал? Чего пишет?
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Eugeny Namokonov
Переслано от Eugeny Namokonov
var SHEET_ID = '';
var SHEET_NAME = 'Лист1';

function getEmails_(q){
 var emails = [];
 var thds = GmailApp.search(q);
 for(var i in thds){
   var msgs = thds[i].getMessages();
   for(var j in msgs){
     var email = []
     msgs[j].markRead()
     email.push([msgs[j].getDate(), msgs[j].getFrom(), '[' + msgs[j].getSubject() + '] ' + msgs[j].getPlainBody()]);
   }
   emails = emails.concat(email)
 }
 return emails;
}


function appendAfter(range, array2d){
 range.clearContent()
 range.setValues(array2d);
}
 
 

function appendData_(sheet, array2d){
 array2d.length !== 0 ? sheet.getRange(sheet.getLastRow()+1, 1, array2d.length, array2d[0].length).setValues(array2d) : ''
}

function run(){
//Gmail Advanced search https://support.google.com/mail/answer/7190
 var array2d = getEmails_(query());
 if(array2d) {
   var ss = SpreadsheetApp.openById(SHEET_ID);
   var sheet = ss.getSheetByName(SHEET_NAME);
   if(!sheet) sheet = ss.insertSheet(SHEET_NAME);
   appendData_(sheet, array2d);
 }
}


function query(){
 var ss = SpreadsheetApp.openById(SHEET_ID);
 var sheet = ss.getSheetByName(SHEET_NAME)
 var val = sheet.getRange("b1").getValue()

 return 'in:inbox after:'+ formatDate(val) + ' is:unread {}'

}
Тебе нужно вот этот код засунуть в код таблицы, потом заполнить первые две строки, потом включить библиотеку gmail api непосредственно в редакторе скриптов этой таблицы
источник

С

Серж in Чат | Google Таблицы и скрипты
Требуется проект Cloud Platform, управляемый пользователями это?
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Серж
Требуется проект Cloud Platform, управляемый пользователями это?
Нет
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Серж
Требуется проект Cloud Platform, управляемый пользователями это?
1) Скрипт вставил в таблицу?
источник