我正在使用

  sheet.getDataRange() 

得到所有细胞。 它获取所有甚至隐藏的行(已过滤)。

如何仅获得非隐藏行(用户打开电子表格时看到的行)?

谢谢。

===============>>#1 票数:0 已采纳

实际上,关于工具/过滤器与google apps脚本的集成已经存在一个问题,并且基于该问题跟踪器,尚未添加此功能。

但是,您可以尝试在此SO后Google脚本过滤器或隐藏行中提供的替代解决方案。 给出的解决方案之一是通过使用数组和hide方法来减少一组数据,如下所示。

function MasterFilter() {
  var headers = 4; // # rows to skip
  var sheet = SpreadsheetApp.getActiveSheet();
  var maxRows = sheet.getMaxRows();

  //show all the rows
  sheet.showRows(1, maxRows);

  //get data from column B
  var data = sheet.getRange('B:B').getValues();

  //iterate over all rows
  for(var i=headers; i< data.length; i++){
    if(data[i][0] == false){
      sheet.hideRow(sheet.getRange(i+1,1));
    }
  }
}

我希望给出的解决方案之一对您有用。 :)

  ask by Anton translate from so

未解决问题?本站智能推荐: