Google Script: фильтр не пустой - PullRequest
0 голосов
/ 03 декабря 2018

Новичок в написании сценариев здесь ...

Я успешно использовал сценарий, основанный на этом посте:
Google Script for Sheets: установить несколько фильтров

Как я могу настроить код для установки фильтра, чтобы предотвратить появление всех непустых записей?Я пробовал варианты 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 голосов
/ 12 декабря 2018

Ответ : используйте одинарные кавычки для скрытых значений.

Итак ... setHiddenValues(['Completed','Canceled',''])

Это завершенная функция.Различия only - это одинарные кавычки вокруг слов Completed и Canceled (sic) и две одинарные кавычки '', которые обозначают «пробелы».

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 , который также исследовал Filters, за идею запуститьв редакторе макросов посмотрите код и адаптируйте его для функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...