我是Google Scripts的新手,我需要找到一种方法将Google电子表格中收集的数据通过电子邮件发送到Gmail帐户。
我有一个Google表单设置,可以记录全天的客户服务统计信息。响应将收集到电子表格中。电子表格每天都会被清除,以备第二天的回复。我需要找到的是一种方法,可以在每天结束时通过电子邮件收集所有收集的回复。
从我到目前为止所做的搜索,我相信需要getRange和getValues,但我不知道如何制作代码来检索工作表上的所有数据。电子表格总是有4个设置列,但生成的行数取决于每天收集的统计信息的数量。我发现getLastRow可以解决这个问题,但是如何将它与getRange和getValues一起使用?
我尝试编写一个非常基本的脚本来完成这项工作,但它只是通过电子邮件发送A1单元格中的值。我需要所有的数据。我使用时间触发器来控制它何时运行。我做错了什么?
function emailStats() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var dataRange = sheet.getActiveRange().getValues();
var subject = "Daily Report of Customer Service Statistics";
MailApp.sendEmail("pnnmeetingroom@gmail.com", subject, dataRange);
}
答案 0 :(得分:0)
的变化:
getDataRange()
.getValues()
检索到的数组生成HTML表格。见Generate HTML table from 2D JavaScript array。代码:
function emailStats() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var data = sheet.getDataRange().getValues();
var subject = "Daily Report of Customer Service Statistics";
MailApp.sendEmail("pnnmeetingroom@gmail.com", subject, createTable(data));
}