首页 文章

如何让谷歌表格回复邮件

提问于
浏览
0

我是谷歌脚本的新手,只是看到了光(我认为) .

我在互联网上找到了一些代码(非常感谢),我会在输入表单时触发电子邮件 .

我使用谷歌表格为我的工作收集数据,当我进行服务访问时,我已经制作了一个表格来编写各种数据 . 有时候这次访问会被收费,有时则不会 . 现在我的问题 .

当我输入“是或否发票时,我有谷歌表格的代码很好地触发电子邮件 . 谷歌表单味道是或否”当我选择“是”它将触发邮件,它将发送电子邮件到我们的经济女士,客户必须收费 . 到目前为止很棒

但我不知道如何在邮件中获取新输入的数据(行),所以她不需要去查看我的google工作表(她说很难导航所有行并且“它会永远不会发生“) .

那么如何将我新输入的formdata从我的(行)转换为由“是”触发的邮件(se代码,消息是danish抱歉) .

如果我能确定我想把哪些细胞/信息带到我的邮件中会很好,但我显然还不够聪明;-)

function onEdit(e) {
var ss = SpreadsheetApp.getActiveSpreadsheet();//Get the spreadsheet
var sheet = ss.getActiveSheet()//Get the active sheet
var cell = ss.getActiveCell().activate();//Get the active cell. 
var triggerCell = cell.getA1Notation();//Get the cells A1 notation.
var triggerCellContent = cell.getValue();//Get the value of that cell. 
var siteUrl = "https://docs.google.com/spreadsheets/d/1WKH72ydFh1DcI3IK7P4Ie3rV_wsiX8Xydf9UXMN4BGw/edit?usp=sharing";
var massage = "Dette er en auto genereret mail og der bliver derfor ikke fulgt op på denne besked.</br></br> En kunde skal faktureres, følg linket det er række / celle nr. " + triggerCell + ".";  

  if (triggerCellContent.match("Ja")){
MailApp.sendEmail("fakemail@gmail.com", "Der er en kunde som SKAL faktureres", "Det drejer sig om denne række: " + triggerCell + " Faktureres: " + triggerCellContent + "." + " Link til indhold: " + siteUrl + "." + " Besked: " + massage + ".");
  }

else if (triggerCellContent.match("Nej")){
MailApp.sendEmail("fakemail@gmail.dk; fakemail2@outlook.dk", "Der har været service besøg hos denne kunde", "Denne række er ny: " + triggerCell + " Faktureres: " + triggerCellContent + "." + " Link til indhold: " + siteUrl + ".");
  }

}

这里有表格og表的链接:

公式:https://docs.google.com/forms/d/1QPziNq9Y7mAF9lAzAWjtaw0Y2CtvokwQR29Vhnbo1ak/viewform

Google电子表格:https://docs.google.com/spreadsheets/d/1WKH72ydFh1DcI3IK7P4Ie3rV_wsiX8Xydf9UXMN4BGw/edit?usp=sharing

我真的希望聪明的人可以帮助我 . 并提前感谢

Tom M Petersen丹麦

1 回答

  • 1
    var ss = SpreadsheetApp.getActiveSpreadsheet(); //Get the spreadsheet
    var sheet = ss.getActiveSheet() //Get the active sheet
    

    提交表单后,表单中将有一行新数据 . 因此,新数据位于最后一行,您可以将数据作为 -

    var rowData = sheet.getRange( sheet.getLastRow(), 1 or column number to start to get data, 1(don't change), number of columns to take(use sheet.getLastColumn() to grab all columns) ).getValues()[0];
    

    rowData是一个对象,您必须遍历它才能获得实际的单元格值 .

    var text="";
    for (i in rowData) {
          text = text + rowData[i] + ", " // format as you need
    }
    

    text ='姓名,电子邮件,地址....'等

    然后使用'body'中的'text'发送邮件 .

相关问题