Size: a a a

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

2019 May 06

ПМ

Павел Мрыкин... in Чат | Google Таблицы и скрипты
Sergey M
Спасибо. Видел сервис, авторизуясь в котором он вытаскивает эту статистику из твоей почты. Мне кажется все-таки не через Imap.
это можно посчитать, вытаскивается цепочка,  из нее адресаты и разница между входящим и отправленным письмом
источник

ПМ

Павел Мрыкин... in Чат | Google Таблицы и скрипты
главное правильно считать, потому что может быть ситуация, когда клиент отправляет два письма.

Первое - с просьбой выставить счет,
второе - какого хрена так долго.

Аналогично и с ответом
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Sergey M
Можно ли с помощью GAS учитывать количество писем (входящих, исходящих, непрочитанных) и среднее время ответа на письмо в Gmail?  И чтобы данные заполнялись примерно вот в такую табличку
Вам нужен скрипт, который будет вытаскивать входящие и отправленные и вставлять их в таблицу, а потом уже по каждому письму можно делать расследование с помощью формул.
источник

EN

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

SM

Sergey M in Чат | Google Таблицы и скрипты
Павел Мрыкин
главное правильно считать, потому что может быть ситуация, когда клиент отправляет два письма.

Первое - с просьбой выставить счет,
второе - какого хрена так долго.

Аналогично и с ответом
Видимо придется 2 счета отправлять. На первое и второе письмо :)
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
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 {}'

}
источник

ПМ

Павел Мрыкин... 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 {}'

}
важно в данной реализации нужно включить gmail API
источник

EN

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

EN

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

EN

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

АЕ

Андрей Ерафонов... in Чат | Google Таблицы и скрипты
Всем привет, интересует формула в которой можно при ее протягивании как то менять название листа? Нужно собрать итоги с нескольких листов
источник

АЕ

Андрей Ерафонов... in Чат | Google Таблицы и скрипты
Есть 30 листов и нужно перенести столбец итогов из каждого листа в один итоговый лист
источник

АМ

Анастасия Москалева... in Чат | Google Таблицы и скрипты
Андрей Ерафонов
Есть 30 листов и нужно перенести столбец итогов из каждого листа в один итоговый лист
делаете список листов и через двссыл обращаетесь к этим ячейкам с именем листа. список листов вручную (если легко) или скриптом (тут: https://t.me/google_sheets/213)
источник

АЕ

Андрей Ерафонов... in Чат | Google Таблицы и скрипты
Анастасия спасибо буду разбираться, думал что функция Qwery подобные вопросы решает, оказывается нет))
источник

АЕ

Андрей Ерафонов... in Чат | Google Таблицы и скрипты
анастасия мне нужно еще чтобы условие выполнялось а не просто перенести данные с листов, такой есть пример?
источник

АЕ

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

МФ

Михаил Фирсов... in Чат | Google Таблицы и скрипты
пример бы, телепаты еще спят все 😊
источник

ПМ

Павел Мрыкин... in Чат | Google Таблицы и скрипты
Михаил Фирсов
пример бы, телепаты еще спят все 😊
да нам тоже лучше примеры )
источник

АЕ

Андрей Ерафонов... in Чат | Google Таблицы и скрипты
Михаил Фирсов
пример бы, телепаты еще спят все 😊
источник

АЕ

Андрей Ерафонов... in Чат | Google Таблицы и скрипты
Нужно заполнить лист партнеры
источник