根据Google表单中的下拉菜单选择自动发送电子邮件

时间:2018-09-12 02:36:08

标签: google-apps-script google-form

关于代码和脚本,我是一个完整的初学者。我正在尝试让我的表单根据下拉菜单上的回复发送并通过电子邮件发送给特定的人。

示例:Pete正在处理Project A,因此他们在下拉菜单上选择Project A,询问正在处理的项目。 如果Pete选择了Project A,那么我需要答复才能转到Person A,B和C。 现在,如果杰西卡(Jessica)正在进行项目B,我需要回复一下A,B和D人

这可能吗?我正确解释了吗?我完全密集并且很简单吗?

1 个答案:

答案 0 :(得分:0)

我提供这个简单的示例只是为了给您一个开始。仔细看看。使用在线文档确定其作用。在G-Suite服务中,您将找到有关Gmail以及如何使用它的信息。另外,此网站上有许多与电子邮件有关的示例。

Google脚本:

function getSelectOptions(){
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('Selections')
  var rg=sh.getDataRange();
  var selections=[];
  var vA=rg.getValues();
  for (var i=0;i<vA.length;i++){
    selections.push(vA[i][0]);
  }
  return selections;
}

function getEmailsForChoice(choice){
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('Selections')
  var rg=sh.getDataRange();
  var vA=rg.getValues();
  for (var i=0;i<vA.length;i++){
    if(choice==vA[i][0]){
      var emails=Utilities.formatString('%s;%s;%s',vA[i][1],vA[i][2],vA[i][3]);
      break;
    }                 
  }
  return emails;
}

function showMyDialog(){
  var ui=HtmlService.createHtmlOutputFromFile('choices')
  SpreadsheetApp.getUi().showModelessDialog(ui, 'Choices');
}

choices.html:

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  <script>
    window.onload=function(){
        google.script.run
          .withSuccessHandler(updateSelect)
          .getSelectOptions();
      }

     function updateSelect(vA){
      var select = document.getElementById("sel1");
      //select.options.length = 0; 
      for(var i=0;i<vA.length;i++)
      {
        select.options[i] = new Option(vA[i],vA[i]);
      }
    }  

    function savSelect(){
      var selected=document.getElementById('sel1').value;
      google.script.run
      .withSuccessHandler(function(emails){
        console.log(emails);
        document.getElementById('emails').innerHTML='Send Emails to the following: '+emails;
      })
      .getEmailsForChoice(selected);
    }
    console.log('My Code');
  </script>
  </head>
  <body>
  <div id="emails"></div>
  <select id="sel1" onChange="savSelect();"></select>
  </body>
  </html>

这是我的电子表格的外观:

enter image description here