2016-10-19 23 views
0

私は、以下の機能に問題があり、誰かが助けてくれることを期待しています。配列未定義問題

背景:以下機能は.getValuesを使用して配列(のように指定されたシートのデータをプルする)、次にforループStoreRows」アレイに行番号を追加することになっていると考えられる

データの特定の範囲が空であることが判明した場合。

私は配列なしでこの機能を実行しようとしましたが、十分な効率がなく、膨大なデータ量のためタイムアウトになります。

エラー:

私はエラーになっ始まった「TypeError例外を:プロパティを読み取ることができません 『3』未定義から(ライン16、ファイル。 『コード』)」if文とのラインのために。

メッセージボックスを追加して、配列の値が正しく引き込まれており、その関数が機能することを確認しました。メッセージボックスを削除すると、エラーが再び表示されます。何らかの理由で、配列がifステートメント内で認識されていません。

お手数をおかけしますようお願い申し上げます。

StoreRows[ArrayRow] = ARow + 2; 
ArrayRow++; 

おかげで、

ジョー

function Test() 
{ 
    var SS = SpreadsheetApp.getActiveSpreadsheet(); 
    var Sheet = SS.getSheets()[0]; 
    var LastRow = Sheet.getLastRow(); 
    var Data = Sheet.getRange("A2" + ":" + "T" + LastRow).getValues(); 
    var ARow = 0; 

    var StoreRows = new Array(); 
    var ArrayRow = 0; 


    for(ARow = 0; ARow < LastRow; ARow++) 
    { 

    if(String(Data[ARow][3]) == "" && String(Data[ARow][4]) == "" && String(Data[ARow][5]) == "" && String(Data[ARow][6]) == "" && String(Data[ARow][7]) == "" && String(Data[ARow][8]) == "" && String(Data[ARow][9]) == "" && String(Data[ARow][10]) == "" && String(Data[ARow][11]) == "" 
&& String(Data[ARow][12]) == "" && String(Data[ARow][13]) == "" && String(Data[ARow][14]) == "" && String(Data[ARow][15]) == "" && String(Data[ARow][16]) == "" && String(Data[ARow][17]) == "") 
    { 

     Browser.msgBox(ARow + 2 + " " + "Test"); 
     StoreRows[ArrayRow] = ARow + 2; 
     ArrayRow++; 

    } 


    } 

答えて

2

Insteatedてみ

StoreRows.push(ARow + 2);