如何在Google表格中的宏(Google表格,过滤器,如果是其他脚本)中使用特定条件的特定激活值空列过滤器的if条件?

用户名

我不知道如何仅将e列过滤器用于if条件。从b1到e1 4列过滤器处于活动状态。我想用if条件检查e过滤器是否为空。然后,如果应该执行,否则执行。否则清空过滤器。这是无效的代码。

        function myFunction() {
          if (SpreadsheetApp.getActive().getActiveSheet().getRange('E1').getFilter() == null) {
            var spreadsheet = SpreadsheetApp.getActive();
            var criteria = SpreadsheetApp.newFilterCriteria()
            .whenCellNotEmpty()
            .build();
            spreadsheet.getActiveSheet().getFilter().setColumnFilterCriteria(5, criteria);
            spreadsheet.getRange('E1').activate();
            spreadsheet.getCurrentCell().offset(2, 0).activate();
          }
          else {
            var spreadsheet = SpreadsheetApp.getActive();
            var criteria = SpreadsheetApp.newFilterCriteria()
            .build();
            spreadsheet.getActiveSheet().getFilter().setColumnFilterCriteria(5, criteria);
            spreadsheet.getRange('B1').activate();
            spreadsheet.getCurrentCell().offset(2, 0).activate();
          }
        }
日加诺奇卡

验证任一过滤器ColumnFilterCriteria在列E中包含一个

修改线

if (SpreadsheetApp.getActive().getActiveSheet().getRange('E1').getFilter() == null) 

  if (SpreadsheetApp.getActive().getActiveSheet().getFilter().getColumnFilterCriteria(5) == null) {

说明:

如果将过滤器应用于包括E列在内的整个电子表格/数据范围getFilter() == null),即使E列不存在过滤条件,也将永远无法实现。

相反,您需要使用getColumnFilterCriteria(5)将返回过滤条件o的方法null

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章