尝试将 sheet 行数据发送到 GmailApp 时缺少变量名称; Javascript/Google 应用脚本
Missing variable name while trying to send sheet row data to GmailApp; Javascript/Google App script
这里仍处于学习曲线上。我正在尝试从 google sheet 获取数据并发送数据 Gmail 应用程序,但出现缺少变量名称错误。这是我在过去 2 小时内尝试过的方法,我将感谢您帮助构建代码以使其正常工作。
function emailTheLastRow(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var range = sheet.getRange("AO2:AO"+sheet.getLastRow()).getValues();
var searchString = "1";
for (var i = 0; i<range.length; i++) {
if(range[i][0] == searchString) {
var lastRow = sheet.getRange(2+i,1,1,41).getValues();
var data = {
'email':lastRow[0][1],
'project':lastRow[0][2],
'client':lastRow[0][3],
'sdate':lastRow[0][4],
'edate':lastRow[0][5],
'loe':lastRow[0][7],
};
GmailApp.sendEmail("test@gmail.com", "Project", "A new project has been created with the following details: " + data());
}
}
}
您正在尝试将字符串与 JSON 连接起来,JSON 是对象而非字符串。使用 stringify
函数 [1] 将对象转换为字符串。在声明 data
变量后添加此行:
data = JSON.stringify(data);
这里仍处于学习曲线上。我正在尝试从 google sheet 获取数据并发送数据 Gmail 应用程序,但出现缺少变量名称错误。这是我在过去 2 小时内尝试过的方法,我将感谢您帮助构建代码以使其正常工作。
function emailTheLastRow(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var range = sheet.getRange("AO2:AO"+sheet.getLastRow()).getValues();
var searchString = "1";
for (var i = 0; i<range.length; i++) {
if(range[i][0] == searchString) {
var lastRow = sheet.getRange(2+i,1,1,41).getValues();
var data = {
'email':lastRow[0][1],
'project':lastRow[0][2],
'client':lastRow[0][3],
'sdate':lastRow[0][4],
'edate':lastRow[0][5],
'loe':lastRow[0][7],
};
GmailApp.sendEmail("test@gmail.com", "Project", "A new project has been created with the following details: " + data());
}
}
}
您正在尝试将字符串与 JSON 连接起来,JSON 是对象而非字符串。使用 stringify
函数 [1] 将对象转换为字符串。在声明 data
变量后添加此行:
data = JSON.stringify(data);