我有一个脚本可以成功提取电子邮件的正文:
var msgBody = messages[m].getBody();
此消息包含 650+ 行信息,我想将每行文本放在同一列的不同行中(例如,如果我将其粘贴到单元格 H1 中,它将的工作方式。 当我运行此命令时:
listserveSheet.getRange("H1").setValues(msgBody)
它自然地将所有 650+ 行信息放在一个单元格中,而不是单元格 H1 到 H652(或任何给定电子邮件的最后一个单元格(。
知道如何更改我的变量以使其能够以我想要的方式设置值吗? 我在想也许循环遍历变量并分别设置每个值。 但是我不知道每次通过循环如何从变量中提取一行。
感谢Suhail在上面评论中的指示,我能够找到答案。
var msgBody = messages[m].getBody();
var dest = msgBody.split("n");
分裂很好吗?然后我能够用这个将各个值设置到单独的单元格中。
for (var i =0; i < dest.length; i++) {
listserveSheet.getRange("H"+ (i+1)).setValue(dest[i]);
}
我曾尝试使用 setValues 操作,但显然,我没有摸索 2d 范围业务。 我怀疑如果我确实了解 2d 范围,在更大的范围内使用 setValues,而不是在单元格上循环 setValue 会更快。 这是我尝试过的一点(以及其他几种不起作用的排列:
listserveSheet.getRange(1,8,dest.length,dest[0].length).setValues(dest);
再次感谢您的帮助