2017-01-15 20 views
0

Googleフォームのコンテキストでは、Googleアプリケーションスクリプトを使用して、グリッド選択型のフォームを作成しようとしています。 私はループに行を次のコードを使用しています - 目的は、列に行の学生や成績のロール番号を持つことです: コード:Googleフォーム向けGoogle-apps-scriptのsetRows

function myFunction() { 
    var form = FormApp.create('Peer_Grading_'); 
    var name = form.addTextItem(); 
    name.setTitle('Your Name'); 
    var rnum=form.addTextItem(); 
    rnum.setTitle('Your Roll Number'); 
    var item = form.addGridItem() 

    item.setTitle('Grade Matrix') 
    for(var i=1; i<=30; i=i+1){ 

    if(i<10){ 
     item.setRows(['16633000'+i]) 

    } 
    else{ 
     item.setRows(['1663300'+i]) 

    } 
    }; 
    item.setColumns(['AA', 'AB', 'BB', 'BC', 'CC', 'CD']); 
} 

をしかし、私は出力として、このスクリーンショットを取得しています:screenshot of the form.

forループの出力として最後のロール番号だけが来ています。

答えて

0

ループ内の行を上書きしているようです。配列を使用して、ループ内のデータをプッシュしてみてください。

function myFunctionForm() { 
    var form = FormApp.create('Peer_Grading_'); 
    var name = form.addTextItem(); 
    name.setTitle('Your Name'); 
    var rnum=form.addTextItem(); 
    rnum.setTitle('Your Roll Number'); 
    var item = form.addGridItem() 

    var rowArr = [] 

    item.setTitle('Grade Matrix') 
    for(var i=1; i<=30; i=i+1){ 

    if(i<10){ 
    rowArr.push('16633000'+i) 

    } 
    else{ 
    rowArr.push(['1663300'+i]) 

    } 
    }; 
    item.setColumns(['AA', 'AB', 'BB', 'BC', 'CC', 'CD']); 
    item.setRows(rowArr); 

} 
+0

これは助けました。たくさんありがとうございます。 – newron

+0

お寄せいただきありがとうございます。この回答または他の誰かがあなたの問題を解決した場合は、それを承認済みとしてマークしてください – utphx

関連する問題