を実行します。最初のシート/フォームは、フォーム提出データ(オリジナルはAmit Agarwalによって作成された、an historic link)を含む電子メールを送信することになっています。 2番目のフォーム/シートは、フォームからデータを収集するだけで何も特別なことはしません。問題のスクリプトはフォーム提出のトリガーに設定されています。確認フォーム送信トリガーは、私が彼らに縛らフォームの送信を持っているどちらも特定のスプレッドシートの2枚を持っている唯一の1枚
私が午前問題は、スクリプトが時々フォーム/シート2から実行されることです。スクリプトを実行するためにトリガーする必要があるシート/フォームを指定したいと思います。私が作成した変更されたコードは、たくさんの見回しに基づいていました。ここでは抜粋です:
function Initialize() {
var triggers = ScriptApp.getProjectTriggers();
for (var i in triggers) {
ScriptApp.deleteTrigger(triggers[i]);
}
ScriptApp.newTrigger("SendConfirmationMail")
.forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
.onFormSubmit()
.create();
}
function SendConfirmationMail(e) {
try {
var ss, bcc, sendername, subject, columns;
var message, value, textbody, sender;
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('Help Request Tickets');
var rowNumber = s.getActiveRange().getRowIndex();
var row = e.range.getRow();
// This is your email address and you will be in the BCC
bcc = "email", "email";
// This will show up as the sender's name
sendername = "sendername";
// Optional but change the following variable
// to have a custom subject for Google Docs emails
subject = "subject"
// This is the body of the auto-reply
message = "message"
ss = SpreadsheetApp.getActiveSheet();
columns = ss.getRange(1, 1, 1, ss.getLastColumn()).getValues()[0];
私はかかわらず、これを実現することになっていたこの2行:
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('Sheet1');
私は(スクリプトはシート2がアクティブであると考えたと私は、スプレッドシートを開いている場合はケースかもしれません)。確かにこれを回避/達成する方法がありますが、私は何が欠けていますか?
を参照してください。Amitは元々そのコードを含むブログエントリを更新しました。代わりにGoogleフォームアドオンのインストールと使用について説明します。ウェイバックマシンのそのポストの最も古いバージョンにはコードがあります:[here](https://web.archive.org/web/20140126020722/http://www.labnol.org/internet/auto-confirmation-電子メール/ 28386)。 – Mogsdad