2016-04-13 94 views
1

所以我使用下面的腳本(信用:Eduardo Kuwakino)。 我有這個問題,它隱藏了列A中的行:A的值爲「x」一個接一個。 對於編輯這些電子表格的人來說,是否可以使這個「不那麼痛苦」?是否可以同時隱藏Google電子表格的多行?

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]); 
    } 
} 

回答

3

有一種方法hideRows它可以隱藏,一次與多位行,但它們必須是連續的。在你的情況下,行一般不會連續。所以腳本必須一個一個地將它們隱藏起來(或者在幾個碰巧在一起的時候也可以分組,但我認爲這不會有多大幫助)。事實上,這在一張大單上會很慢。

作爲替代方案,我建議使用一個filter view,具體過濾片由塔A與定製式=A2<>"x"

filter view

每個過濾器視圖有其自己的URL,其可以被髮送到人編輯電子表格。他們只會看到A中的值與「x」不同的行。

相關問題