2017-08-17 2 views
-1

このコードは、シートの最後の20行でのみ動作します。今は、列のすべての空白セルに式を設定しますが、このコードでは最後の20行にのみ空白を挿入します。この範囲の最後の20行にのみ式を入れることはできますか?

function setFormulaInBlankCells() { 
//----------------- COLONNA A --------------- 
// formula solo su celle vuote "Area" 
    var sheet=SpreadsheetApp.getActiveSheet(); 
    var lastRow=sheet.getMaxRows(); 
    var lastColumn=sheet.getMaxColumns();  
    var range=sheet.getRange(1, 1, lastRow, 1); 
    var data=range.getValues(); 
    for(var i=0;i<data.length;i++) 
{ 
    if(!data[i][0]) 
    { 
    var E1=sheet.getRange(i+1,5).getA1Notation(); 
    var I1=sheet.getRange(i+1,9).getA1Notation(); 
    var formula='=IFERROR(IF(' + E1 + '="";"";IF(' + I1 + '="";"RU";"ST")))' 
    sheet.getRange(i+1,1).setFormula(formula); 
    } 
} 

}

+0

変更に意味を推測します。 – Cooper

+0

「lastRow-20」または「lastRow-19」? –

答えて

0

私はあなたが私の開始値がdata.length-20のために、シートの最後の20行

function setFormulaInBlankCells() 
{ 
    var sheet=SpreadsheetApp.getActiveSheet(); 
    var lastRow=sheet.getMaxRows(); 
    var range=sheet.getRange(1, 1, lastRow, 1); 
    var data=range.getValues(); 
    for(var i=data.length-20;i<data.length;i++) 
    { 
    if(!data[i][0]) 
    { 
     var E1=sheet.getRange(i+1,5).getA1Notation(); 
     var I1=sheet.getRange(i+1,9).getA1Notation(); 
     var formula='=IFERROR(IF(' + E1 + '="";"";IF(' + I1 + '="";"RU";"ST")))' 
     sheet.getRange(i+1,1).setFormula(formula); 
    } 
    } 
} 
関連する問題