前提・実現したいこと
GoogleAppScriptについて質問です。
フォーム提出をトリガーとしたスクリプトを書こうと思っています。
本来トリガーのページ?のようなところから設定できるはず何ですが。
発生している問題・エラーメッセージ
スプレッドシートとフォームとのリンクを切っているためか、トリガーがどうやら作用していません。
そこでスクリプトに直接トリガーを作ってしまおうと思っています。しかし下のスクリプトではエラーはない(デバッグでも問題なし)のに思った結果を返してくれません。
該当のソースコード
GAS
function myfunction() {
var ss = SpreadsheetApp.openById('ID!');
var dataA = ss.getSheetByName('NAME!');
var form1 = FormApp.openById('formID');
var responses1 = form1.getResponses();
var new_response = responses1[responses1.length-1].getItemResponses();
var id = parseInt(1000+responses1.length);
var answers = [id];
for(var i=0; i<new_response.length; i++){
answers.push(new_response[i].getResponse());
dataA.getRange(2+responses1.length,i+1).setValue(answers[i]);
}
}
function onSend(){
ScriptApp.newTrigger(form1dataA).forForm('formID').onFormSubmit().create();
}
試したこと
時間主導でのトリガーでは問題ありませんでした。
はじめは.creaate()メソッドを抜いていたのですが、うまくいかなかったので付け足しました。この辺りに関する日本語のサイトが数えるほどしかなく、調べるのに苦労している現状です。
補足情報(FW/ツールのバージョンなど)
①そもそもトリガーをスクリプトで記述するような事態であるかどうか
②トリガーについて新しい関数を作る必要があるのか
③トリガーに関する記述はどこが間違っているのか、というかこれはトリガーを作ることを指しているのか具体的な意味は??
を教えていただきたいです。
ネットで調べた生半可な知識で書いているので理解不十分な程お許し下さい。見よう見まねで書いたプログラムについてどうかご意見頂きたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/07 03:46