我需要从Google表格中的电子表格发送多封电子邮件,但其中一封邮件来自多个列

时间:2020-04-01 19:24:26

标签: google-apps-script google-sheets google-sheets-macros

好的,所以我的第一列中有150封电子邮件列表,我需要独立发送电子邮件给所有150封电子邮件。但是,这150行的旁边有6列信息(名称,年龄,尺寸,衣服的颜色等)。

如果可以,是否可以使用Google App脚本来实现,有人可以通过一些代码的链接或向我发送一些代码来支持我。

1 个答案:

答案 0 :(得分:1)

我认为您需要使用“ getValues”检索2D数组中的所有数据,然后需要使用for循环对数组进行循环。在循环中,您将获取[i]数据并填写字符串或html模板,然后发送电子邮件。 ([i] [0]是电子邮件,[i] [1]是名称...)。

使用此代码开始...

function myFunction() {
  var array = SpreadsheetApp.getActiveSheet().getDataRange().getValues();      
  for(var i=0;i<array.length;i++){
    var loopEmail = array[i][0];
    var loopName = array[i][1];
    var loopAge = array[i][2];
    var loopSize = array[i][3];
    var loopColour = array[i][4];
    var loopField1 = array[i][5];
    var loopField2 = array[i][6];        
    text = "Hey " + loopName + ", your age is " + loopAge + " and you size is...";
    GmailApp.sendEmail(loopEmail, "Subject", text);
  } 
}

注意:

  • 如果工作表上有标题,请记住以i = 1而不是i = 0开头。