2016-11-18 2 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 («A1»). CurrentRegion'. Вы можете найти ответ здесь: http://stackoverflow.com/questions/15187688/select-contiguous-range-in-app-script-for-spreadsheet –

ответ

0

Если вы только добавлять новые строки, и каждая строка имеет что-то в столбце A, вы можете сделать это:

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(); 
Смежные вопросы