Google脚本:过滤不为空

时间:2018-12-03 14:46:11

标签: filter google-sheets

在这里编写脚本的新手...

我已经根据这篇文章成功使用了脚本:
Google Script for Sheets: Set multiple filters

如何调整代码以设置过滤器,以防止出现所有非空白条目?我尝试过Null, "", BLANK的变体,但没有成功。

function setFilters() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sh = ss.getSheetByName("Project Tracker");
  var rang = sh.getDataRange();
  var filtercriteria = SpreadsheetApp.newFilterCriteria().setHiddenValues(["Completed","Cancelled"]).build();//used Cancelled NOT Canceled; Create criteria with two hidden values
  var filter = rang.getFilter() || rang.createFilter();// getFilter already available or create  a new one
  filter.setColumnFilterCriteria(2, filtercriteria);//set the criteria against Col2 (B column)
}

最感谢。

1 个答案:

答案 0 :(得分:0)

  

答案:对隐藏值使用单引号。

所以... setHiddenValues(['Completed','Canceled',''])

这是完成的功能。 区别是CompletedCanceled(原文如此)周围的单引号以及两个标识“空白”的单引号''

function so_53596113() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sh = ss.getSheetByName("Project Tracker");
  var rang = sh.getDataRange();
  var filtercomplete = SpreadsheetApp.newFilterCriteria().setHiddenValues(['Completed','Canceled','']).build();//Create criteria with two hidden values
  var filter = rang.getFilter() || rang.createFilter();// getFilter already available or create  a new one
  filter.setColumnFilterCriteria(3, filtercomplete);//set the criteria against Col3 (C column)
}

这是一个有价值的问题。 Google的文档不存在,在撰写本文时,没有其他互联网资源可以解决此问题。

向也在研究过滤器的DanCue致信,以获取运行宏编辑器的想法,请研究 代码并将其改编为功能。