谷歌脚本循环细胞

时间:2016-12-22 15:01:12

标签: javascript google-apps-script google-sheets-api

在谷歌脚本上循环浏览数据之后的一些帮助。

我想要做的是循环变量范围(A列)并获取B列中的唯一值,它与我的"搜索条件匹配"

A栏中的例子我有多次出现足球队。

B列中的

是玩家姓名

我的搜索标准是"利物浦"

然后代码将循环通过A列,并找到"利物浦"它会将相邻列中的值添加到数组中(如果它已经存在于数组中,则它不会添加它)

(我最后将使用此数组进行数据验证 - 下拉播放器名称列表)

由于

1 个答案:

答案 0 :(得分:1)

我相信你对appscript完全不熟悉。所以,在这里我建议一些基础知识,如果你对循环和数组有所了解,它将帮助你轻松完成任务。

您可以使用:

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

sheet变量将包含整个电子表格,data变量将整张表格作为二维数组。

现在,当您获得数组时,您可以正常进行循环。 所以,你可以使用:

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-&gt; Logs。

您也可以在电子表格上打印该数组,为此,请使用:

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