繁体   English   中英

是否可以一次隐藏Google电子表格的多行?

[英]Is it possible to hide many rows of a Google spreadsheet at once?

所以我在下面使用这个脚本(信用:Eduardo Kuwakino)。 我有这个问题,它隐藏了A列中的行:A,值为“x”一个一个。 是否有可能让编辑这些电子表格的人“减少痛苦”?

function hideCells(sheet)
{
    var maxRows = sheet.getMaxRows();

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

  //get data from clumn A
  var data = sheet.getRange('A:A').getValues();

  //iterate over all rows
  for(var i=0; i< data.length; i++){
    //compare first character, if asterisk, then hide row
    if(data[i][0].charAt(0) == 'x'){
      sheet.hideRows(i+1);
    }
  }}

function onOpen() {
  var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();

  for(var i=0; i< sheets.length; i++){

      hideCells(sheets[i]);
  }
}

有一个方法hideRows可以一次隐藏多行,但它们必须是连续的 在您的情况下,行通常不会是连续的。 所以脚本必须逐个隐藏它们(或者当一些碰巧在一起时可能成组,但我不认为这会有多大帮助)。 事实上,这在一张大纸上会很慢。

作为替代方案,我建议使用过滤视图 ,特别是使用自定义公式=A2<>"x"按列A过滤工作表

过滤视图

每个过滤器视图都有自己的URL,可以将其发送给编辑电子表格的人员。 他们只会看到A中的值与“x”不同的行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM