2016-11-18 60 views
0

一部分,我有一个全方位的 - A1:D12获得全套其中该细胞的

在我的剧本我想有这个范围内的变量,所以我可以一个新行添加到它。

这个想法是,这个范围是动态的,所以每次我添加一个新行时它都会改变。

此脚本需要范围的第一个单元格(它基本上是A1单元格):

var sheet = SpreadsheetApp.getActiveSheet(); 
    var startrow = 1; 
    //the starting cell of the range 
    var startingCell = sheet.getRange(1, 1); 

但现在我想获得全套A1为的一部分。

我该怎么做?

+3

我明白了,这是一个Excel VBA函数'range(“A1”)。CurrentRegion'。你可以在这里找到答案:http://stackoverflow.com/questions/15187688/select-contiguous-range-in-app-script-for-spreadsheet –

回答

0

如果只添加新行,每行有一列的东西,你可以这样做:

function getNextEmptyRow() { 
    var sheet = SpreadsheetApp.openById("SHEET ID").getSheetByName("SHEET NAME"); 
    var column = sheet.getRange('A:A'); 
    var values = column.getValues(); 
    var ct = 0; 
    while (values[ct] && values[ct][0] != "") { 
     ct++; 
    } 
    //return (ct + 1); // Next row. 
    return ct; // Last row with something in it. 
} 

做这样的事情:

var range = 'A1:D' + getNextEmptyRow();