GSCRIPT: оператор If, если фильтры включены; в противном случае продолжить - PullRequest
0 голосов
/ 10 июня 2019

Я пытаюсь найти оператор if, который проверяет фильтры перед запуском функции.Если фильтры применяются к рабочему листу, отмените все фильтры.

Причина этого в том, что фильтры, похоже, вызывают проблемы с макросом.

Мне удалось сделать это довольно легко в Excel,но я борюсь с этим в Gscript.

Спасибо

Формула Excel:

function FilterOff(){
  If (ActiveSheet.AutoFilterMode And ActiveSheet.FilterMode) Or ActiveSheet.FilterMode Then
  ActiveSheet.ShowAllData
End If
}

1 Ответ

2 голосов
/ 10 июня 2019

попробуйте это:

function removeAllFilters() {
  var ss=SpreadsheetApp.getActive();
  var shts=ss.getSheets();
  for(var i=0;i<shts.length;i++) {
    var f=shts[i].getFilter();
    if(f) {
      f.remove();
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...