Есть четыре вещи, которые вы должны понять и исследовать.
1 - Создайте сценарий, который можно создать в виде устанавливаемого триггера «OnFormSubmit». Документация здесь. .Это будет выполняться каждый раз при отправке формы.Это легко сделать, и я добавил скриншот экрана триггера добавления в конце этого ответа.
2 - Узнайте об информации, полученной с помощью сценария OnFormSubmit.В частности, он вернет диапазон отправки формы, из которого вы хотите указать значение Столбца 7 (Владелец).
3 - лист электронных писем содержит отдельный набор данных.Вы можете получить его, сославшись на документацию getSheetByName
- . Ссылка
4. Необходимо найти соответствие между значением «Владелец» и «Имя» на листе «Электронные письма».Существует множество способов найти совпадение с владельцем, но циклически проходить через данные «электронные письма», вероятно, проще всего. На каждой новой строке вы проверяете, совпадает ли имя электронной почты с именем «Владелец». Когда вы находитесопоставьте, затем вы получите сопроводительный адрес электронной почты (в ячейке рядом с именем электронной почты). Затем вы можете отправить электронное письмо, как вы проверяли.
Этот код адаптирует ваш существующий код для работы через указанные шаги.
function so5524531901(e) {
// this script as an Installable "OnFormSubmit" Trigger
//setup the spreadsheet
var ss = SpreadsheetApp.getActiveSpreadsheet();
//get the range from OnFormSubmit
var range = e.range;
//Logger.log("DEBUG: the range is "+range.getA1Notation());//DEBUG
// get the data for the range
var response = range.getValues();
// get the owner name from the form submission
var owner = response[0][7];
Logger.log("DEBUG: Owner = "+owner);// DEBUG
// get the emails list
var emailSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Emails");
// get ALL the data from this sheet
var emaildata = emailSheet.getDataRange().getValues();
// check how many rows of data
var emailLastRow = emailSheet.getLastRow();
// start the loop through the emails data
for (var i=1; i<emailLastRow; i++){
// if owner is equal to Email Name
if (owner == emaildata[i][0]){
// there is a match
//get the email address
var emailAddress = emaildata[i][1];
Logger.log("DEBUG: owner = "+emaildata[i][0]+", email address: "+emailAddress);// DEBUG
// Send Alert Email.
// Uncomment the following rows to declare the message, subject and then send the email.
// var message = 'This is your Alert email!'; // Second column
//var subject = 'Your Google Spreadsheet Alert';
//MailApp.sendEmail(emailAddress, subject, message);
}
}
}
