フィルターを操作したい(FilterCriteria

1// SpreadsheetApp.newFilterCriteria()
2//   .条件メソッド()
3//   .build();
4
5const criteria = SpreadsheetApp.newFilterCriteria()
6  .whenCellNotEmpty()
7  .build();

FilterCriteriaBuilderでフィルター条件を新規作成できます。 「空白セルを除外」や「ある日付で判定」「ある文字列ではじまる」などの条件メソッドを呼び.build()することでフィルター用のFilterCriteriaオブジェクトが作成できます。 よく使うフィルター条件は、定義しておくとよいです。

フィルターを作成・取得したい(createFilter / getFilter

1const range = sheet.getDataRange();
2
3// すでにフィルターがあれば取得し、なければ新規作成する
4const filter = sheet.getFilter() || range.createFilter();

シートに設定できるフィルターはひとつだけです。 getFilterは、シートにフィルターがない場合nullを返すため、 createFilterと組み合わせて使うとよいです。

空白セルを除外したい(whenCellNotEmpty

1const criteria = SpreadsheetApp.newFilterCriteria().whenCellNotEmpty().build();
2
3// 2列目(B列)に条件を設定する。列番号は1はじまり
4filter.setColumnFilterCriteria(2, criteria);

whenCellNotEmptyで空白セルを除外できます。 もっともよく使う条件だと思います。 setColumnFilterCriteriaの列番号は1はじまりです(2ならB列)。