脚本将电子邮件读取为数字而不是字符串
Script is reading email as a number instead of string
我正在尝试遵循本指南(之前从未编写过程序):
https://www.groovypost.com/howto/google-sheets-send-email-based-on-cell-value/
但它一直给我错误:
异常:参数 (number[],String,String) 与 MailApp.sendEmail 的方法签名不匹配。
sendEmail@发送Email.gs:8
据我了解,这意味着电子邮件值是一个数字。但是我不知道如何解决这个问题。
function sendEmail() {
// Fetch the email address
var emailRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Client Input").getRange("D2");
var emailAddress = emailRange.getValues();
// Send Alert Email.
var message = 'Please go to your Issues Tracker for more information'; // Second column
var subject = ' Notification Action Required';
MailApp.sendEmail(emailAddress, subject, message);
}
因为 emailRange.getValues()
returns 一个二维数组,你需要通过它的索引来引用实际的字符串值,在这种情况下,[0][0]
因为数组只有一个值。
var emailAddress = emailRange.getValues()[0][0];
或者如果您打算只使用一个电子邮件地址,只需使用:
var emailAddress = emailRange.getValue();
参考文献:
我正在尝试遵循本指南(之前从未编写过程序):
https://www.groovypost.com/howto/google-sheets-send-email-based-on-cell-value/
但它一直给我错误:
异常:参数 (number[],String,String) 与 MailApp.sendEmail 的方法签名不匹配。 sendEmail@发送Email.gs:8
据我了解,这意味着电子邮件值是一个数字。但是我不知道如何解决这个问题。
function sendEmail() {
// Fetch the email address
var emailRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Client Input").getRange("D2");
var emailAddress = emailRange.getValues();
// Send Alert Email.
var message = 'Please go to your Issues Tracker for more information'; // Second column
var subject = ' Notification Action Required';
MailApp.sendEmail(emailAddress, subject, message);
}
因为 emailRange.getValues()
returns 一个二维数组,你需要通过它的索引来引用实际的字符串值,在这种情况下,[0][0]
因为数组只有一个值。
var emailAddress = emailRange.getValues()[0][0];
或者如果您打算只使用一个电子邮件地址,只需使用:
var emailAddress = emailRange.getValue();
参考文献: