javascript - Google Apps 脚本返回正确的值 + 多个不需要的逗号

标签 javascript google-apps-script google-sheets

我有一个简单的脚本来根据电子表格中的数据发送电子邮件。

第 1 列是主题。第 2、3、4、5 列是正文。

问题是 - 我在电子表格中的北斗七星 - 在电子邮件末尾发送的逗号脚本较多。如果这是第一行 - 没有额外的逗号。第 2 行 - 2 个逗号,第 3 行 - 4 个逗号,依此类推。

如何去掉这些不需要的逗号? 对于这个新手问题我真的很抱歉。

代码是

function sendEmails() {
  var time = new Date;
  Logger.log(time);
  var sheet = SpreadsheetApp.getActiveSheet();
  var hojaRegistro = SpreadsheetApp.getActive();
  var activeRow = hojaRegistro.getActiveCell().getRow();
  var subject = sheet.getRange(activeRow, 1, activeRow, 1).getValues();
  var message = sheet.getRange(activeRow, 2, activeRow, 5).getValues();
  MailApp.sendEmail('my@mymail.com', subject, message);
  sheet.getRange(activeRow, 6).setValue('E-mail sent on ' +time);
  SpreadsheetApp.flush();
}

function onOpen() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var entries = [{
    name : "Send Email",
    functionName : "sendEmails"
  }];
  sheet.addMenu("Script Center Menu", entries);
};

最佳答案

如果您希望将事件行中的第一列作为主题,并将第 2、3、4、5 列作为正文,则必须从同一行中检索所有列的范围。为此,您必须将第三个参数指定为 1,而不是 activeRow(var message =sheet.getRange(activeRow, 2, 1 , 5).getValues();)

对代码进行了一些更改。

试试这个:

function sendEmails() {
  var time = new Date;
  Logger.log(time);
  var sheet = SpreadsheetApp.getActiveSheet();
  var hojaRegistro = SpreadsheetApp.getActive();
  var activeRow = hojaRegistro.getActiveCell().getRow();
  var subject = sheet.getRange(activeRow, 1, activeRow, 1).getValues();
  var message = sheet.getRange(activeRow, 2, 1 , 5).getValues();
  MailApp.sendEmail('my@mymail.com', subject, message);
  sheet.getRange(activeRow, 6).setValue('E-mail sent on ' +time);
  SpreadsheetApp.flush();
}

function onOpen() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var entries = [{
    name : "Send Email",
    functionName : "sendEmails"
  }];
  sheet.addMenu("Script Center Menu", entries);
}

希望有帮助!

关于javascript - Google Apps 脚本返回正确的值 + 多个不需要的逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28319318/

相关文章:

javascript - 数组从js到php,计算数组长度出错

google-sheets - 具有两个条件的 Google 电子表格 COUNTIF 公式等效

javascript - Highcharts 的验证堆叠问题

javascript - 没有 jQuery 的 stopPropagation

javascript - 初始化 JS Swagger 客户端时传入身份验证凭据?

date - 将字符串时间戳转换为日期会导致重置为 UNIX 纪元

google-apps-script - 更改单元格值时触发 Google Sheet Script onChange

html - 有没有办法使用应用程序脚本将 html 文本保存到谷歌驱动器中的文件?

google-apps-script - Google Sheet 标签更改通知

google-apps-script - 如何在 Google 表单/表格中编辑表单提交的回复?