【发布时间】:2015-03-15 14:59:19
【问题描述】:
我正在尝试使我在 Stackoverflow post 上找到的代码工作
@Serge insas 发布了以下代码
function getMessagesWithLabel() {
var destArray = new Array();
var threads = GmailApp.getUserLabelByName('Facebook').getThreads(1,10);
for(var n in threads){
var msg = threads[n].getMessages();
var destArrayRow = new Array();
destArrayRow.push('thread has '+threads[n].getMessageCount()+' messages');
for(var m in msg){
destArrayRow.push(msg[m].getSubject());
}
destArray.push(destArrayRow);
}
Logger.log(destArray);
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sh = ss.getActiveSheet();
if(ss.getLastRow()==0){sh.getRange(1,1).setValue('getMessagesWithLabel() RESULTS')};
sh.getRange(ss.getLastRow()+1,1,destArray.length,destArray[0].length).setValues(destArray)
}
因此,为了使这段代码正常工作,我创建了一个名为“Facebook”的 gmail“标签”。
- 我将一封电子邮件移至该“Facebook”标签。
- 然后我创建了一个电子表格。
- 我进入了该电子表格的脚本编辑器
- 我创建了一个电子表格脚本
- 我添加了上面贴的代码
- 我运行了函数并授权了它们
- 我再次运行 GetMessagesWithLabel 函数,出现以下错误。
TypeError:无法从未定义中读取属性“长度”。 (第 53 行,文件“代码”)
第 53 行是 sh.getRange(ss.getLastRow()+1,1,destArray.length,destArray[0].length).setValues(destArray)
我希望有人可以帮助我完成这个示例。
问候,
克里斯
【问题讨论】: