Решение
В вашем скрипте было несколько ошибок, таких как e.getValue()
вместо range.getValue()
, я исправил эти ошибки.
Кроме того, и самое главное, чтобы иметь возможность отправлять электронные письма с использованием триггеров, необходимо использовать устанавливаемые триггеры, поскольку простые имеют ограничения, поскольку для службы MailApp
требуется авторизация. Здесь вы можете найти больше информации об этом.
Чтобы создать устанавливаемый триггер (если вы этого еще не сделали), go в своем редакторе сценариев, а затем Правка-> Триггеры текущего проекта и панель триггеров Добавить триггер . Выберите свою функцию (onEdit) и установите тип события на при редактировании .
Это ваш код с исправленными опечатками:
function onEdit(e) {
var ss= SpreadsheetApp.getActiveSpreadsheet();
var range = e.range;
if(range.getColumn()== 9 && range.getValue()=="Yes")
{
var celladdress = 'E'+ range.getRow();
var emailid= ss.getRange(celladdress).getValue();
var sub = 'Credentials-reg';
var uname = ss.getRange('G'+ range.getRow()).getValue();
var pass = ss.getRange('H'+ range.getRow()).getValue();
var b = "Your details are as follows: \n Username :" +uname+ "\n Password : "+pass+ "\nThis is for your information please. \nThanks and Regards";
GmailApp.sendEmail(emailid, sub, b);
}
}
Надеюсь, это помогло вам. Дайте мне знать, если вам нужно что-то еще или вы что-то не поняли. :)