所以我在下面使用这个脚本(信用: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]);
}
}
答案 0 :(得分:3)
有一种方法hideRows可以同时隐藏多行,但它们必须连续。在您的情况下,行通常不会是连续的。所以脚本必须逐个隐藏它们(或者当一些碰巧在一起时可能成组,但我不认为这会有多大帮助)。事实上,这在一张大纸上会很慢。
作为替代方案,我建议使用filter view,专门按照自定义公式=A2<>"x"
每个过滤器视图都有自己的URL,可以将其发送给编辑电子表格的人员。他们只会看到A中的值与“x”不同的行。