2016-05-17 7 views
1

ブックが2枚入っています。最初のシートはフォーム1から読み込まれ、2番目のシートはフォーム2から読み込まれます。私は以下のスクリプトを持っていますが、フォーム1が書き込まれると実行するだけです。それは現在の形では実行されません。どんな助けもありがとう。1つのフォームのみのアプリケーションスクリプトを実行します。

function setTrigger() { 
    var form = FormApp.openByID('123456789abcdefg'); 
    ScriptApp.newTrigger('formSubmit').forForm(form).onFormSubmit().create(); 
} 

function formSubmit(e) { 
    var r = e.range; 
    var row = r.getRow(); 
    var min = 1; 
    var max = 1000000; 
    var selectId = makeArray(min, max); 
    if (row > 2) { 
    var currentId = r.offset(2 - row, 5, row - 2, 1).getValues(); 
    for (var i = 0; i < currentId.length; i++) { 
     selectId.splice(selectId.indexOf(currentId[i][0]), 1); 
     if (selectId.length == 0) selectId = makeArray(min, max); 
    } 
    } 
    r.offset(0, 5, 1, 1).setValue(selectId[Math.floor(Math.random() * selectId.length)]); 
} 

function makeArray(min, max) { 
    var output = []; 
    for (var i = min; i <= max; i++) { 
    output.push(i); 
    } 
    return output; 
} 
+0

エラーは何ですか?トリガーが実行されないか、トリガーを設定しているスクリプトが実行されませんか? –

答えて

0

e.range.getSheet()を使用して、送信されたレスポンスが第1または第2のシートに対応するかどうかを確認します。

関連する問題