0

ここにあるヘルプ デスク チュートリアル スクリプトを変更しています。

https://developers.google.com/apps-script/articles/helpdesk_tutorial

これは内部使用のみであるため、「連絡先メール」フィールドを削除し、フォーム ログのユーザー名をスプレッドシートに設定しました。formSubmitReply 関数の補正を編集しました。

オリジナル:

function formSubmitReply(e) {
var userEmail = e.values[3];
MailApp.sendEmail(userEmail,
    "Help Desk Ticket",
    "Thanks for submitting your issue. \n\nWe'll start " +
    "working on it as soon as possible. \n\nHelp Desk",
    {name:"Help Desk"});
}​

変更:

function formSubmitReply(e) {
var userEmail = e.user;
MailApp.sendEmail(userEmail,
    "Help Desk Ticket",
    "Thanks for submitting your issue. \n\nWe'll start " +
    "working on it as soon as possible. \n\nHelp Desk",
    {name:"Help Desk"});
}​

ご覧のとおり、userEmail 変数の定義方法を変更しただけです。ライブ フォームを表示してチケットを送信すると、うまくいくようです。

しかし、フォームを Google の内部サイト (「イントラネット」) に埋め込んだ後、機能しなくなりました。

フォームが埋め込まれているときに動作するように userEmail を定義する必要がある方法はありますか?

私もこれを試しました:

var userEmail = sheet.getRange(lastRow, getColIndexByName("Username")).getValue();

しかし、運がありませんでした。どんな助けでも大歓迎です!私は明らかにこれが初めてで、適切に機能させるためにいくつかのことをハックしようとしています。

乾杯

4

1 に答える 1