繁体   English   中英

如果列 C 中的单元格为空,则隐藏行

[英]Hide rows if cell in column C is empty

我有一个带有主页的电子表格,其中包含用于打开多个工作表的按钮,包括“管理驱动程序”工作表。

样品表图像

样品表链接

“管理员驱动程序”表在 A 列中有 2000 个唯一的员工 ID。

ArrayFormula/ImportRange 公式在另一个电子表格中查找员工 ID,并自动填充列 B、C 和 D。

我正在尝试获取按钮后面的 Apps 脚本代码以显示所有行,然后隐藏所有未填充列 B、C 和 D 的行。 该公式将始终填充所有 3 列 B、C 和 D,因此脚本可以指向这 3 列中的任何一列。 这是我的脚本,它指向 C 列:

//Admin Drivers Button
function GoToAdminDriversSheet() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName("Admin Drivers");
  var data = sheet.getDataRange().getValues();
  sheet.showRows(3 , 2000);
    for(var i = 1; i < data.length; i++) {
    //If column C is " " then hide the row.
    if(data[i][2] === " ") {
      sheet.hideRows(2, 2000);
    
    }
  }
}

该脚本打开工作表并显示所有行,但当 C 列为空白时,我无法让它隐藏行。

尝试这个:

function GoToAdminDriversSheet() {
  var ss = SpreadsheetApp.getActive();
  var sh = ss.getSheetByName("Admin Drivers");
  var vs = sh.getRange(3, 1, sh.getLastRow() - 2, sh.getLastColumn()).getValues();
  sh.showRows(3, 2000);
  vs.forEach((r, i) => {
    if (r[2] === '') {
      sh.hideRows(i + 3);
    }
  });
}

暂无
暂无

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

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