過去数日間、答えを見つけようとしてクリックしてきましたが、私にとって意味のあるものを見つけることができないようです(許してください、私はGASにかなり慣れていません)。約 12 人のユーザーが使用する Fantasy Golf Draft シートを設定しようとしていますが、その半数以上が Gmail アドレスを持っていない/使用するつもりがありません。ファイルへのアクセスは問題ありません。スクリプトを実行しようとすると、ボタン/シェイプがクリックされると、次に選択する人に自動化された電子メールが送信されます。スクリプトの機能は、自分自身またはスクリプトを承認できる Google アカウントを持っている人などからのものである場合に機能しています。Google アカウントを持っていない人である場合、問題が発生します。
私の質問 - 誰がボタンを変更/クリックしているかに関係なく、スクリプトを自分のメールまたはシート/スクリプト所有者のメールからのみ送信するように設定するにはどうすればよいですか? これを行うための Web アプリケーションとしてスクリプトを作成する方法に関するリンクが表示されますが、すぐに迷ってしまいます。
ここに私のシートへのリンクがあります: [ https://docs.google.com/spreadsheets/d/16AppcmrcuhatnzcEs7eIQyD_p1swbRimRZZ4FdbhBKI/edit?usp=sharing][1]
そして、ここに私の送信メールコードがあります:
function sendAlertEmails() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
ss.setActiveSheet(ss.getSheetByName("Send Mails"));
var sheet = SpreadsheetApp.getActiveSheet();
var dataRange = sheet.getRange("A2:f2");
var data = dataRange.getValues();
for (i in data) {
var rowData = data[i];
var emailAddress = rowData[1];
var recipient = rowData[0];
var message1 = rowData[2];
var message2 = rowData[3];
var message3 = rowData[4];
var message4 = rowData[5];
var message = 'Hey ' + recipient + ',\n\n' + message1 + '\n\n' + ' The last player picked was ' + message2 + '\n\n' + message3 +'\n\n' + message4;
var subject = '*GOLF DRAFT 2018* - YOU ARE ON THE CLOCK';
MailApp.sendEmail(emailAddress, subject, message);
var ss = SpreadsheetApp.getActiveSpreadsheet();
ss.setActiveSheet(ss.getSheetByName("DRAFT"));
}
}
どんな助けでも大歓迎です!