0

我正在尝试将主题行自动提取到 Google 文档或电子表格中。我找到了一个基本示例,但不知道如何使这项工作。

function processInbox() {
    // get all threads in inbox
    var threads = GmailApp.getInboxThreads();
    for (var i = 0; i < threads.length; i++) {
        // get all messages in a given thread
        var messages = threads[i].getMessages();
        // iterate over each message
        for (var j = 0; j < messages.length; j++) {
            // log message subject
            Logger.log(messages[j].getSubject());
        }
    }
}
4

2 回答 2

1

这是 Javascript,而不是 Java。上面的脚本将您的所有消息收集到一个列表中,这是正确的第一步,但它不会将其写入工作表。

之后,您需要添加一个额外的函数来写出来。如果你在电子表格中,你可以使用这样的东西。我已经修改了上述函数,将主题放入一个数组中,而不是将它们记录到控制台中,并让它返回该数组。

function processInbox() {
    var threads = GmailApp.getInboxThreads();
    var subjects = [[]];    

    for (var i = 0; i < threads.length; i++) {

        var messages = threads[i].getMessages();

        for (var j = 0; j < messages.length; j++) {

            subjects[j] = [messages[j].getSubject()];
        }
    }

    return subjects;
}

function writeOutSubjects() {

    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var sheet = ss.getSheets()[0];

    var subjects = processInbox();
    var range = sheet.getRange(1,1,subjects.length,1);

    range.setValues(subjects);

};
于 2015-03-16T22:12:12.327 回答
0

您将需要使用类似的方法setValue()。您需要获取对电子表格的引用,然后是要操作的工作表,然后是设置值的范围。

谷歌文档

于 2015-03-16T21:37:39.370 回答