Я пытаюсь изучить javascript, поэтому я решил закодировать скрипт в Google Apss Script, чтобы перечислить все электронные письма с приложением. До сих пор у меня этот код:Написание массива в таблицах Google
function listaAnexos() {
// var doc = DocumentApp.create('Relatório do Gmail V2');
var plan = SpreadsheetApp.create('Relatorio Gmail');
var conversas = GmailApp.search('has:attachment', 0, 10)
var tamfinal = 0;
if (conversas.length > 0) {
var tam = 0
var emails = GmailApp.getMessagesForThreads(conversas);
var cont = 0;
for (var i = 0 ; i < emails.length; i++) {
for (var j = 0; j < emails[i].length; j++) {
var anexos = emails[i][j].getAttachments();
for (var k = 0; k < anexos.length; k++) {
var tam = tam + anexos[k].getSize();
}
}
var msginicial = conversas[i].getMessages()[0];
if (tam > 0) {
val = [i, msginicial.getSubject(), tam];
planRange = plan.getRange('A1:C1');
planRange.setValue(val);
// doc.getBody().appendParagraph('A conversa "' + msginicial.getSubject() + '" possui ' + tam + 'bytes em anexos.');
}
var tamfinal = tamfinal + tam;
var tam = 0;
}
}
}
listaAnexos();
Он работает, но с 2-мя проблемами:
1) записывает три val
значения в A1
, B1
и C1
. Но я хочу написать i
в A1
, msginicial.getSubject()
в B1
и tam
в C1
.
2) Как я могу изменить диапазон в интерактивном режиме? Написать первое письмо в A1:C1
, второй в A2:C2
...
Я знаю, что 2 очень основные вопросы, но не нашел на гугле :(
Проблема 1 в порядке. Я изменил 'planRange = plan.getRange ('A1: C1');' by' planRange = plan.getRange (1, 1, 3, 3); ', но теперь я получаю сообщение об ошибке tihs:' Не удается найти метод getRange (номер, номер, номер, номер). (строка 20, файл «Код») '. Я попытался преобразовать числа в integer (http://stackoverflow.com/questions/596467/how-do-i-convert-a-float-to-an-int-in-javascript), но ни одно из решений не работает. Есть идеи? – Rcoster
Обнаружили ошибку! Благодаря! – Rcoster