2013-09-03 3 views
3

Я новичок в javascript и пытаюсь написать сценарий для электронной таблицы, которая вытащит из нее разные вещи. Сразу после битвы, у меня возникли проблемы с определением массива имен, которые будут в spreasheet. Ошибка говорит «Missing, перед постановкой (строка 10)»Определение массивов в скриптах Google

function readRows() { 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    var rows = sheet.getDataRange(); 
    var numRows = rows.getNumRows(); 
    //var values = rows.getValues(); 

    var Names = sheet.getRange("A2:A7"); 
    var Name = new Array(6); 
    var Name_cell = Names.getCell(1, 1); 
    var Name[0] = Name_cell.getValue(); // <-- Here's the issue 
    var Name_cell = Names.getCell(2, 1); 
    var Name[1] = Name_cell.getValue(); 
    var Name_cell = Names.getCell(3, 1); 
    var Name[2] = Name_cell.getValue(); 
    var Name_cell = Names.getCell(4, 1); 
    var Name[3] = Name_cell.getValue(); 
    var Name_cell = Names.getCell(5, 1); 
    var Name[4] = Name_cell.getValue(); 
    var Name_cell = Names.getCell(6, 1); 
    var Name[5] = Name_cell.getValue(); 

    // ... 
} 
+0

его javascript, а не java –

ответ

5

Попробуйте

function readRows() { 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    var rows = sheet.getDataRange(); 
    var numRows = rows.getNumRows(); 
    //var values = rows.getValues(); 

    var Names = sheet.getRange("A2:A7"); 
    var Name = [ 
    Names.getCell(1, 1).getValue(), 
    Names.getCell(2, 1).getValue(), 
    ..... 
    Names.getCell(5, 1).getValue()] 

массив можно просто следующим образом, вместо выделения, а затем назначение.

var arr = [1,2,3,5] 

Ваша первоначальная ошибка была из-за следующей строке, и те, как это

var Name[0] = Name_cell.getValue(); 

Поскольку Name уже определена, и вы присваиваете значения его элементов, вы должны пропустить var, так просто

Name[0] = Name_cell.getValue(); 

Pro Совет: Для большинства вопросов, которые, как этот, непосредственно не связаны с услугами Google, вы лучше погуглить Ф.О. r способ сделать это в javascript вообще.

+1

Спасибо! Я попробовал Google, но, видимо, я не использовал правильные ключевые слова – derekantrican

1

Это может оказаться полезным для немногих, кто изо всех сил, как я был:

var data = myform.getRange("A:AA").getValues().pop(); 
var myvariable1 = data[4]; 
var myvariable2 = data[7]; 
+0

getRange («A: AA») - должен быть getRange («A1: AA1») или любой другой строки; -0 – Terry

1

Я думаю, что, может быть, это потому, что вы объявляете переменную, вы уже объявленную:

var Name = new Array(6); 
//... 
var Name[0] = Name_cell.getValue(); // <-- Here's the issue: 'var' 

Я думаю, что это должно быть так:

var Name = new Array(6); 
//... 
Name[0] = Name_cell.getValue(); 

Сообщите мне, если это сработает! ;)

Смежные вопросы