2016-12-22 4 views
0

После небольшой помощи, связанной с данными в скрипте google.google-скрипты, связанные с циклами

То, что я хочу сделать, это цикл по переменной диапазона (колонка А) и получить уникальные значения в столбце B, где он соответствует моим «критерии поиска»

Например, в столбце А у меня есть несколько мест где футбольных команд.

в колонке В это имена игроков

Мои критерии поиска является «Ливерпуль»

код будет затем цикл через колонки А и где он находит «Ливерпуль» будет добавить значение в соседнем столбце в массив (если он уже существует в массиве это не добавит его)

(я тогда, наконец, использовать этот массив, чтобы быть проверка достоверности данных - Выпадающий список имен игроков)

Благодаря

ответ

1

Я считаю, что вы совершенно новичок в appscript. Итак, здесь я предлагаю несколько основ, которые помогут вам легко выполнить задачу, если у вас есть знания о циклах и массивах.

Вы можете использовать:

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("YOUR_SHEET_NAME"); 
    var data = sheet.getDataRange().getValues(); 

sheet переменных будет иметь всю таблицу и data переменных будет иметь весь лист как 2D массив.

Теперь, когда вы получили массив, вы можете сделать нормальный цикл. Таким образом, вы можете использовать:

var dropDownArray = []; 
    for(var i=0; i<data.length; i++) //Loop through non-blank values 
    { 
    if(data[i][0] == "Liverpool") //search for liverpool in 1st column 
    { 
     if(dropDownArray.indexOf(data[i][1])<0) //check whether 2nd column's corresponding value is not duplicate 
     { 
     dropDownArray.push(data[i][1]); //If its unique, push into array 
     } 
    } 
    } 

Таким образом, вы получите массив со всеми игроками Ливерпуля. Просто распечатайте его значение после завершения цикла, используя: Logger.log(dropDownArray);

Вы можете проверить журналы с помощью ctrl + enter с клавиатуры или щелкнуть view-> Logs.

Вы также можете распечатать этот массив на таблицу, для этого используйте:

sheet.getRange(row, column).setValue(value) 
+0

это было очень полезно, и помог мне в получении кода, спасибо за помощь – Redex

+0

@Redex вы можете ! Надеюсь, ваша задача будет выполнена, к Рождеству, кстати! –

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