Google apps script 将故事情节2测验的结果存储在google sheet中,然后通过电子邮件向我发送最新结果
请原谅我太生疏了。我不是编码员 我需要的是将我在谷歌电子表格中制作的一些在线学习中的测验结果存储起来,并在每次有人完成测验时给我发电子邮件 从在线学习heros论坛,我有一个代码,它将执行从故事情节测验中获取变量并将其写入google工作表的任务 我还有一些代码,可以从表格的最后一行收集信息并通过电子邮件发送给我 如果我在谷歌编辑器中测试脚本,它会向我发送电子邮件。当完成测验的人更新工作表时,它不会向我发送电子邮件。每次有人完成测验时,谷歌表格都会被填写,只是没有电子邮件。代码如下:Google apps script 将故事情节2测验的结果存储在google sheet中,然后通过电子邮件向我发送最新结果,google-apps-script,Google Apps Script,请原谅我太生疏了。我不是编码员 我需要的是将我在谷歌电子表格中制作的一些在线学习中的测验结果存储起来,并在每次有人完成测验时给我发电子邮件 从在线学习heros论坛,我有一个代码,它将执行从故事情节测验中获取变量并将其写入google工作表的任务 我还有一些代码,可以从表格的最后一行收集信息并通过电子邮件发送给我 如果我在谷歌编辑器中测试脚本,它会向我发送电子邮件。当完成测验的人更新工作表时,它不会向我发送电子邮件。每次有人完成测验时,谷歌表格都会被填写,只是没有电子邮件。代码如下: var S
var SHEET_NAME = "DATA";
var SCRIPT_PROP = PropertiesService.getScriptProperties();
function doGet(e) {
return handleResponse(e);
}
function doPost(e) {
return handleResponse(e);
}
function handleResponse(e) {
var lock = LockService.getPublicLock();
lock.waitLock(30000); // wait 30 seconds before conceding defeat.
try {
var doc = SpreadsheetApp.openById(SCRIPT_PROP.getProperty("MmzGq0lh9jQjkO-_i8STL2nsLKXLh7K_NHzR8yD5gnk"));
var sheet = doc.getSheetByName(SHEET_NAME);
var headRow = e.parameter.header_row || 1;
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0];
var nextRow = sheet.getLastRow() + 1; // get next row
var row = [];
for (i in headers) {
if (headers[i] == "Timestamp") { // special case if you include a 'Timestamp' column
row.push(new Date());
} else { // else use header name to get data
row.push(e.parameter[headers[i]]);
}
}
sheet.getRange(nextRow, 1, 1, row.length).setValues([row]);
return ContentService
.createTextOutput(JSON.stringify({
"result": "success",
"row": nextRow
}))
.setMimeType(ContentService.MimeType.JSON);
} catch (e) {
return ContentService
.createTextOutput(JSON.stringify({
"result": "error",
"error": e
}))
.setMimeType(ContentService.MimeType.JSON);
} finally {
lock.releaseLock();
var lastRow = sheet.getLastRow();
var range = sheet.getRange(lastRow, 1, lastRow, 10);
var values = range.getValues();
var date = values[0][0]
var formattedDate = Utilities.formatDate(date, "GMT+08:00", "dd/MM/yyyy H:mm a");
var firstname = values[0][2]
var surname = values[0][1]
var score = values[0][3]
var result = values[0][5]
var emailAddress = "My email"
var message = "Name:\t" + firstname + " " + surname + "\n\nDate:\t\t" + formattedDate + "\nScore:\t\t" + score + "%\nStatus:\t" + result;
var subject = "Training " + result;
MailApp.sendEmail(emailAddress, subject, message);
}
}
任何帮助都将不胜感激。请确认,因为你说自己是初学者。。您是否使用自己的电子邮件地址更改了电子邮件变量
var emailAddress = "My email"
可以肯定的是,既然你说你是初学者。。您是否使用自己的电子邮件地址更改了电子邮件变量
var emailAddress = "My email"
我尝试了更多的测试,错误是:我尝试了更多的测试,错误是: