これは、Gmail からすべての電子メールを取得し、送信者名のリストを Google スプレッドシートに入れるために作成した適切な JavaScript コードです。
function doGet()
{
var myspreadsheet = SpreadsheetApp.openById("0Atg1TJnn4dFdGbjNGSrMGJRdGc");
var mysheet = myspreadsheet.getSheets()[0];
var threads = GmailApp.getInboxThreads();
var messages = GmailApp.getMessagesForThreads(threads);
var froms = [];
for(var i = 0; i < threads.length; i++)
{
froms.push([messages[i][0].getFrom(),i]);
}
mysheet.getRange(1,1,threads.length,2).setValues(froms);
}
それはうまく機能しますが、2つの問題があります
GetInboxThreadsメソッドは、何を試しても最初の 500 通の電子メールのみを取得します。問題は、誰かが 500 以上を取得する方法を知っているかということです。最初の 500 通のメールではなく、最後の 500 通を取得するのはどうですか?
少し遅いですが、効率的にするために多大な努力を払っていますが、誰かが電子メールから送信者名を取得し、その送信者名のリストをスプレッドシートにすばやく配置する方法を提案できますか?