Javascript 谷歌脚本搜索一个匹配表,然后抓取下一个单元格数据并将其作为变量添加

Javascript 谷歌脚本搜索一个匹配表,然后抓取下一个单元格数据并将其作为变量添加,javascript,google-chrome,google-apps-script,Javascript,Google Chrome,Google Apps Script,基本上我有一个谷歌表单。此表单有两列的学生电子邮件地址和家长电子邮件地址。一位秘书正在表单中输入学生的电子邮件地址,我希望脚本参考表格,在A列中找到学生的电子邮件地址,然后在B列中抓住旁边的家长地址,并将其作为变量 似乎什么都没用。事实上,我甚至不能让脚本向工作表中添加新数据 触发器已设置,前两个电子邮件地址正在工作。我还可以查看日志,发现它现在正在引用工作表并获取所有数据,但没有转到for函数或if语句。这方面似乎有问题 function onFormSubmit(e) { var fo

基本上我有一个谷歌表单。此表单有两列的学生电子邮件地址和家长电子邮件地址。一位秘书正在表单中输入学生的电子邮件地址,我希望脚本参考表格,在A列中找到学生的电子邮件地址,然后在B列中抓住旁边的家长地址,并将其作为变量

似乎什么都没用。事实上,我甚至不能让脚本向工作表中添加新数据

触发器已设置,前两个电子邮件地址正在工作。我还可以查看日志,发现它现在正在引用工作表并获取所有数据,但没有转到for函数或if语句。这方面似乎有问题

 function onFormSubmit(e) {
  var form = e.response;
  var itemResponses = form.getItemResponses();
  var email = itemResponses[2].getResponse();
  var firstName = itemResponses[0].getResponse();
  var lastName = itemResponses[1].getResponse();
  var assetTag = itemResponses[3].getResponse();
  var deviceIssue = itemResponses[4].getResponse();
  var description = itemResponses[5].getResponse();
  var building = itemResponses[6].getResponse();
  var helpDesk = 'Me@domain.com';

  var subject = 'Testing';
  var body = 'Making sure part of the Script has worked. ';

  MailApp.sendEmail(helpDesk, subject, body)
  MailApp.sendEmail(email, subject, body)


  var statusSheet = SpreadsheetApp.openById("15p9jsYIzvyMgok2pWkhYJYQZpSvqHO31Ugyn5mzXZD4").getSheetByName("Current");
  var data = statusSheet.getDataRange().getValues(); 
      for(n=0;n<data.length;++n){ 
        if(data[n][0].toString().match(email)==email){ var parentEmail = data[n][1].getText();
      }
      Logger.log(data)

MailApp.sendEmail(parentEmail, subject, body)
}
函数onFormSubmit(e){
var形式=e.响应;
var itemResponses=form.getItemResponses();
var email=itemResponses[2]。getResponse();
var firstName=itemResponses[0]。getResponse();
var lastName=itemResponses[1]。getResponse();
var assetTag=itemResponses[3]。getResponse();
var deviceIssue=itemResponses[4]。getResponse();
var description=itemResponses[5]。getResponse();
var building=itemResponses[6]。getResponse();
var帮助台Me@domain.com';
var主体=‘测试’;
var body='确保脚本的一部分工作正常';
MailApp.sendEmail(帮助台、主题、正文)
MailApp.sendEmail(电子邮件、主题、正文)
var statusSheet=SpreadsheetApp.openById(“15p9jsYIzvyMgok2pWkhYJYQZpSvqHO31Ugyn5mzXZD4”)。getSheetByName(“当前”);
var data=statusSheet.getDataRange().getValues();

对于(n=0;n此脚本是绑定到您的google表单还是电子表格的?您是否为“onFormSubmit()”设置了触发器?此脚本需要绑定到google表单。因为使用“response”提交表单是“可安装的”,必须设置一个触发器。是的,脚本位于表单端,并设置了一个触发器。前两封电子邮件已发送,但SpreadsheetApp.openByID存在问题……我今天早上收到的错误报告表明,它无法在对象SpreadsheetApp中找到函数openByID,这让我很困惑,因为我在另一个应用程序中如何使用相同的函数脚本。我修复了它!我觉得自己像个白痴。变量是在for语句的{}内设置的,所以我需要在其中执行我的函数才能使它工作。在var parentEmail之后,我刚刚输入并在关闭}之前设置了电子邮件……很好,我只需要仔细考虑一下!