Class FilterCriteriaBuilder

FilterCriteriaBuilder

フィルタに条件を追加するには、次の操作を行います。

  1. SpreadsheetApp.newFilterCriteria() を使用して条件作成ツールを作成します。
  2. このクラスのメソッドを使用して、ビルダーに設定を追加します。
  3. build() を使用して、指定した設定で条件を作成します。

一般的な使用例

シートの値を非表示にする

次のサンプルでは、シートの既存のフィルタを取得して、セルを非表示にする条件を追加しています 列 C に「hello」という文字列を含めます。または「world」。このサンプルの条件を使用できるのは デフォルトのシートタイプ Grid シートをフィルタします。
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setHiddenValues(["hello", "world"])
                             .build();
filter.setColumnFilterCriteria(3, criteria);

空でないセルのみを表示する

次のサンプルでは、DataSource シートにフィルタを追加しています。 データベースに接続され、条件が [Category] のセルのみになっている列 表示されます。
// Gets the sheet named "Connected sheet," which is connected to a database.
let sheet = SpreadsheetApp.getActiveSpreadsheet()
                          .getSheetByName("Connected sheet")
                          .asDataSourceSheet();
// Creates criteria that only shows non-empty cells.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenCellNotEmpty()
                             .build();
// Applies the criteria to the column named "Category."
sheet.addFilter("Category", criteria);

メソッド

メソッド戻り値の型概要
build()FilterCriteria条件作成ツールに追加した設定を使用してフィルタ条件を組み合わせます。
copy()FilterCriteriaBuilderこのフィルタ条件をコピーし、別の条件に適用できる条件作成ツールを作成します フィルタで絞り込んでから、
getCriteriaType()BooleanCriteria条件のブール値の型(CELL_EMPTY など)を返します。
getCriteriaValues()Object[]ブール型の条件に対応する引数の配列を返します。
getHiddenValues()String[]フィルタで非表示にする値を返します。
getVisibleBackgroundColor()Colorフィルタ条件として使用される背景色を返します。
getVisibleForegroundColor()Colorフィルタ条件として使用される前景色を返します。
getVisibleValues()String[]ピボット テーブル フィルタが示す値を返します。
setHiddenValues(values)FilterCriteriaBuilder非表示にする値を設定します。
setVisibleBackgroundColor(visibleBackgroundColor)FilterCriteriaBuilderフィルタ条件として使用する背景色を設定します。
setVisibleForegroundColor(visibleForegroundColor)FilterCriteriaBuilderフィルタ条件として使用する前景色を設定します。
setVisibleValues(values)FilterCriteriaBuilderピボット テーブルに表示する値を設定します。
whenCellEmpty()FilterCriteriaBuilder空のセルを表示するフィルタ条件を設定します。
whenCellNotEmpty()FilterCriteriaBuilder空でないセルを表示するようにフィルタ条件を設定します。
whenDateAfter(date)FilterCriteriaBuilder指定した日付より後の日付のセルを表示するフィルタ条件を設定します。
whenDateAfter(date)FilterCriteriaBuilder指定した相対的な日付より後の日付のセルを表示するフィルタ条件を設定します。
whenDateBefore(date)FilterCriteriaBuilder指定した日付より前の日付を含むセルを表示するフィルタ条件を設定します。
whenDateBefore(date)FilterCriteriaBuilder指定された相対的な日付より前の日付を含むセルを表示するフィルタ条件を設定します。
whenDateEqualTo(date)FilterCriteriaBuilder指定した日付と等しい日付のセルを表示するフィルタ条件を設定します。
whenDateEqualTo(date)FilterCriteriaBuilder指定した相対日付と等しい日付を持つセルを表示するフィルタ条件を設定します。
whenDateEqualToAny(dates)FilterCriteriaBuilder指定した日付のいずれかと日付が一致するセルを表示するフィルタ条件を設定します。
whenDateNotEqualTo(date)FilterCriteriaBuilder指定した日付と等しくないセルを表示するフィルタ条件を設定します。
whenDateNotEqualToAny(dates)FilterCriteriaBuilder指定した日付と等しくない日付のセルを表示するフィルタ条件を設定します できます。
whenFormulaSatisfied(formula)FilterCriteriaBuilder指定した数式(=B:B<C:C など)を含むセルを表示するフィルタ条件を設定します。 true と評価されます。
whenNumberBetween(start, end)FilterCriteriaBuilder2 の範囲内またはいずれかである数値のセルを表示するフィルタ条件を設定します 表します。
whenNumberEqualTo(number)FilterCriteriaBuilder指定した数値と等しい数値のセルを表示するフィルタ条件を設定します。
whenNumberEqualToAny(numbers)FilterCriteriaBuilder指定した値のいずれかに等しい数値のセルを表示するフィルタ条件を設定します あります。
whenNumberGreaterThan(number)FilterCriteriaBuilder指定した数値より大きい数値を持つセルを表示するようにフィルタ条件を設定します
whenNumberGreaterThanOrEqualTo(number)FilterCriteriaBuilder指定した値以上の数値を持つセルを表示するフィルタ条件を設定します あります。
whenNumberLessThan(number)FilterCriteriaBuilder指定した数値より小さい数値を含むセルを表示するフィルタ条件を設定します。
whenNumberLessThanOrEqualTo(number)FilterCriteriaBuilder指定した値以下の数値のセルを表示するフィルタ条件を設定します あります。
whenNumberNotBetween(start, end)FilterCriteriaBuilder数値が「2」でなく「2」でもない数値のセルを表示するようにフィルタ条件を設定します 表します。
whenNumberNotEqualTo(number)FilterCriteriaBuilder指定した数値と等しくない数値を持つセルを表示するフィルタ条件を設定します。
whenNumberNotEqualToAny(numbers)FilterCriteriaBuilder指定した数値と等しくない数値を持つセルを表示するフィルタ条件を設定します あります。
whenTextContains(text)FilterCriteriaBuilder指定したテキストを含むテキストを含むセルを表示するフィルタ条件を設定します。
whenTextDoesNotContain(text)FilterCriteriaBuilder指定したテキストを含まないテキストを含むセルを表示するフィルタ条件を設定します。
whenTextEndsWith(text)FilterCriteriaBuilder指定したテキストで終わるテキストを含むセルを表示するフィルタ条件を設定します。
whenTextEqualTo(text)FilterCriteriaBuilder指定したテキストと等しいテキストを含むセルを表示するフィルタ条件を設定します。
whenTextEqualToAny(texts)FilterCriteriaBuilder指定したテキストのいずれかと等しいテキストを含むセルを表示するフィルタ条件を設定します 使用できます。
whenTextNotEqualTo(text)FilterCriteriaBuilder指定したテキストと等しくないテキストを含むセルを表示するフィルタ条件を設定します。
whenTextNotEqualToAny(texts)FilterCriteriaBuilder指定したものと等しくないテキストを含むセルを表示するフィルタ条件を設定します 使用できます。
whenTextStartsWith(text)FilterCriteriaBuilder指定したテキストで始まるテキストを含むセルを表示するフィルタ条件を設定します。
withCriteria(criteria, args)FilterCriteriaBuilderフィルタ条件を、BooleanCriteria 値で定義されたブール値条件に設定します。例: CELL_EMPTY または NUMBER_GREATER_THAN として指定します。

詳細なドキュメント

build()

条件作成ツールに追加した設定を使用してフィルタ条件を組み合わせます。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
let criteria = SpreadsheetApp.newFilterCriteria() // Creates a criteria builder.
                             .whenCellNotEmpty() // Adds settings to the builder.
                             .build();          // Assembles the criteria.
filter.setColumnFilterCriteria(2, criteria);

戻る

FilterCriteria - フィルタ条件の表現。


copy()

このフィルタ条件をコピーし、別の条件に適用できる条件作成ツールを作成します フィルタで絞り込んでから、

この方法は、どのタイプのフィルタでも使用できます。シートフィルタを使用すると 条件を別の列にコピーします

let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Makes a copy of the filter criteria applied to column C.
let criteria = filter.getColumnFilterCriteria(3).copy().build();
// Applies the copied criteria to column B. The copied criteria overwrites any existing
// criteria on column B.
filter.setColumnFilterCriteria(2, criteria);

戻る

FilterCriteriaBuilder - このフィルタ条件に基づくフィルタ条件ビルダー。


getCriteriaType()

条件のブール値の型(CELL_EMPTY など)を返します。リソースの種類について BooleanCriteria 列挙型をご覧ください。

多くのユーザーは、ブール型の条件条件をフィルタに追加するときに、 編集することもできます

  • 条件の引数を取得するには、getCriteriaValues() を使用します。
  • 条件タイプと条件値を使用してフィルタ条件を作成または変更する方法については、以下をご覧ください。 withCriteria(criteria, args)

この方法は、どのタイプのフィルタにも使用できます。フィルタ条件がブール値でない場合 null を返します。

let ss = SpreadsheetApp.getActiveSheet();
// Gets the filter on the active sheet.
let filter = ss.getFilter();
// Gets the criteria type and returns a string representing the criteria type object.
let criteriaType = filter.getColumnFilterCriteria(2)
                         .getCriteriaType()
                         .toString();
// Logs the criteria type.
console.log(criteriaType);

戻る

BooleanCriteria - ブール値の条件のタイプ。条件がブール値でない場合は null あります。


getCriteriaValues()

ブール値の基準を示す引数の配列を返します。ブール型の条件タイプには 空の配列を返します(例: CELL_NOT_EMPTY)。

多くのユーザーは、ブール型の条件条件をフィルタに追加するときに、 編集することもできます

  • ブール型の条件タイプを取得するには、getCriteriaType() を使用します。
  • 条件タイプと条件値を使用してフィルタ条件を作成または変更するには、 withCriteria(criteria, args)

    この方法は、どのタイプのフィルタにも使用できます。

    let ss = SpreadsheetApp.getActiveSheet();
    let filter = ss.getFilter();
    // Gets the values of the boolean criteria and logs them. For example, if the boolean
    // condition is whenNumberGreaterThan(10), then the logged value is 10.
    let criteriaValues = filter.getColumnFilterCriteria(2).getCriteriaValues();
    console.log(criteriaValues);

    戻る

    Object[] - ブール値の基準タイプに応じた引数の配列。引数の数 その型は、FilterCriteriaBuilder クラスの対応する when...() メソッドと一致します。


getHiddenValues()

フィルタで非表示にする値を返します。

この条件は、デフォルトのシートタイプである Grid シートのフィルタで使用します。 他のタイプのフィルタに対してこのメソッドを呼び出すと、null が返されます。

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

戻る

String[] - フィルタで非表示にする値の配列。


getVisibleBackgroundColor()

フィルタ条件として使用される背景色を返します。この背景色のセルは残ります 表示されます。

この条件は、デフォルトのシートタイプである Grid シートのフィルタで使用します。 他のタイプのフィルタに対してこのメソッドを呼び出すと、null が返されます。

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
// Logs the background color that column B is filtered by as a hexadecimal string.
let filter = range.getFilter();
let color = filter.getColumnFilterCriteria(2)
                  .getVisibleBackgroundColor()
                  .asRgbColor()
                  .asHexString();
console.log(color);

戻る

Color - フィルタ条件として使用される背景色。


getVisibleForegroundColor()

フィルタ条件として使用される前景色を返します。この前景色のセルは残ります 表示されます。

この条件は、デフォルトのシートタイプである Grid シートのフィルタで使用します。 他のタイプのフィルタに対してこのメソッドを呼び出すと、null が返されます。

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
// Logs the foreground color that column B is filtered by as a hexadecimal string.
let filter = range.getFilter();
let color = filter.getColumnFilterCriteria(2)
                  .getVisibleForegroundColor()
                  .asRgbColor()
                  .asHexString();
console.log(color);

戻る

Color - フィルタ条件として使用される前景色。


getVisibleValues()

ピボット テーブル フィルタが示す値を返します。

この条件は、データベースに接続されていないピボット テーブルのフィルタにのみ適用されます。 他のタイプのフィルタの場合は空の配列を返します。

let ss = SpreadsheetApp.getActiveSheet();
// Gets the first pivot table on the sheet, then gets the visible values of its first filter.
pivotTable = ss.getPivotTables()[0];
pivotFilterValues = pivotTable.getFilters()[0].getFilterCriteria().getVisibleValues();
// Logs the visible values.
console.log(pivotFilterValues);

戻る

String[] - ピボット テーブル フィルタで表示される値の配列。


setHiddenValues(values)

非表示にする値を設定します。既存の表示値または非表示値をクリアします。

この条件を使用できるのは Grid 枚のシート(デフォルト)のフィルタのみです シートの種類を指定します。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Sets the values to hide and applies the criteria to column C.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setHiddenValues(["Hello", "World"])
                             .build();
filter.setColumnFilterCriteria(3, criteria);

パラメータ

名前説明
valuesString[]非表示にする値のリスト。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。

例外

Error - いずれかの値が null の場合。


setVisibleBackgroundColor(visibleBackgroundColor)

フィルタ条件として使用する背景色を設定します。この背景色のセルは残ります 表示されます。背景色フィルタ条件を設定すると、現在のカラーフィルタ条件が削除されます 作成します。

この条件を使用できるのは Grid 枚のシート(デフォルト)のフィルタのみです シートの種類を指定します。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that filters by background color and sets it to column B.
let color = SpreadsheetApp.newColor().setRgbColor("#185ABC").build();
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setVisibleBackgroundColor(color)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
visibleBackgroundColorColor設定する背景色。色は RGB スタイルにする必要があります 指定します。この方法ではテーマカラーはサポートされていません。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


setVisibleForegroundColor(visibleForegroundColor)

フィルタ条件として使用する前景色を設定します。この前景色のセルは残ります 表示されます。前景色フィルタの条件を設定すると、現在のカラーフィルタ条件が削除されます 作成します。

この条件を使用できるのは Grid 枚のシート(デフォルト)のフィルタのみです シートの種類を指定します。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that filters by foreground color and sets it to column B.
let color = SpreadsheetApp.newColor().setRgbColor("#185ABC").build();
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setVisibleForegroundColor(color)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
visibleForegroundColorColor設定する前景色。色は RGB スタイルにする必要があります 指定します。この方法ではテーマカラーはサポートされていません。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


setVisibleValues(values)

ピボット テーブルに表示する値を設定します。既存の表示値または非表示値をクリアします。

この条件は、ピボット テーブルのフィルタにのみ使用できます データベースです

// Gets the active sheet.
const ss = SpreadsheetApp.getActiveSheet();
// Gets the first pivot table on the sheet and adds a filter to it that
// sets the visible values to "Northeast" and "Southwest."
let pivotTable = ss.getPivotTables()[0];
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setVisibleValues(["Northeast", "Southwest"])
                             .build();
pivotTable.addFilter(2, criteria);

パラメータ

名前説明
valuesString[]表示する値のリスト。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。

例外

Error - いずれかの値が null の場合。


whenCellEmpty()

空のセルを表示するフィルタ条件を設定します。

この条件は、どのタイプのフィルタでも使用できます。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Sets criteria to column B that only shows empty cells.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenCellEmpty()
                             .build();
filter.setColumnFilterCriteria(2, criteria);

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenCellNotEmpty()

空でないセルを表示するようにフィルタ条件を設定します。

この条件は、どのタイプのフィルタでも使用できます。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Sets criteria to column B that only shows cells that aren't empty.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenCellNotEmpty()
                             .build();
filter.setColumnFilterCriteria(2, criteria);

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateAfter(date)

指定した日付より後の日付のセルを表示するフィルタ条件を設定します。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は日付でなければなりません。もし データがデータベースに接続されていない場合、フィルタに使用する列のデータ型は接続されません 日付にする必要がありますが、そうしないと予期しない結果になる可能性があります。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates after June 1, 2022
// and sets it to column A.
let date = new Date("June 1, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateAfter(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

パラメータ

名前説明
dateDate非表示にする最新の日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateAfter(date)

指定した相対的な日付より後の日付のセルを表示するフィルタ条件を設定します。宛先 相対的な日付のオプションを表示するには、Enum RelativeDate をご覧ください。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続されている場合、フィルタに使用する列のデータ型は日付でなければなりません。もし データがデータベースに接続されていない場合、フィルタに使用する列のデータ型は接続されません 日付にする必要がありますが、そうしないと予期しない結果になる可能性があります。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates after today's date
// and sets it to column A.
let date = SpreadsheetApp.RelativeDate.TODAY;
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateAfter(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

パラメータ

名前説明
dateRelativeDate最新の相対的な日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateBefore(date)

指定した日付より前の日付を含むセルを表示するフィルタ条件を設定します。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続されている場合、フィルタに使用する列のデータ型は日付でなければなりません。もし データがデータベースに接続されていない場合、フィルタに使用する列のデータ型は接続されません 日付にする必要がありますが、そうしないと予期しない結果になる可能性があります。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates before June 1, 2022
// and sets it to column A.
let date = new Date("June 1, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateBefore(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

パラメータ

名前説明
dateDate非表示にする最も早い日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateBefore(date)

指定された相対的な日付より前の日付を含むセルを表示するフィルタ条件を設定します。 相対的な日付のオプションを表示するには、Enum RelativeDate をご覧ください。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続されている場合、フィルタに使用する列のデータ型は日付でなければなりません。もし データがデータベースに接続されていない場合、フィルタに使用する列のデータ型は接続されません 日付にする必要がありますが、そうしないと予期しない結果になる可能性があります。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates before today's date
// and sets it to column A.
let date = SpreadsheetApp.RelativeDate.TODAY;
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateBefore(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

パラメータ

名前説明
dateRelativeDate非表示にする最も古い相対日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateEqualTo(date)

指定した日付と等しい日付のセルを表示するフィルタ条件を設定します。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は日付でなければなりません。もし データがデータベースに接続されていない場合、フィルタに使用する列のデータ型は接続されません 日付にする必要がありますが、そうしないと予期しない結果になる可能性があります。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates equal to June 1, 2022
// and sets it to column A.
let date = new Date("June 1, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateEqualTo(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

パラメータ

名前説明
dateDateセルの値が一致する日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateEqualTo(date)

指定した相対日付と等しい日付を持つセルを表示するフィルタ条件を設定します。 相対的な日付のオプションを表示するには、Enum RelativeDate をご覧ください。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は日付でなければなりません。もし データがデータベースに接続されていない場合、フィルタに使用する列のデータ型は接続されません 日付にする必要がありますが、そうしないと予期しない結果になる可能性があります。

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates that fall within the past month
// and sets it to column A.
let date = SpreadsheetApp.RelativeDate.PAST_MONTH;
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateEqualTo(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

パラメータ

名前説明
dateRelativeDateセル値が一致している必要がある相対的な日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateEqualToAny(dates)

指定した日付のいずれかと日付が一致するセルを表示するフィルタ条件を設定します。

この条件は、データベースに接続されているデータでのみ使用できます。たとえば、 DataSource シート( データベース、または DataSourcePivotTable: DataSource シートから作成されたピボット テーブルです。

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "date" column that shows cells with any of the below dates.
let date1 = new Date("June 1, 2022");
let date2 = new Date("June 2, 2022");
let date3 = new Date("June 3, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateEqualToAny([date1, date2, date3])
                             .build();
dataSheet.addFilter("date", criteria);

パラメータ

名前説明
datesDate[]表示する日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateNotEqualTo(date)

指定した日付と等しくないセルを表示するフィルタ条件を設定します。

この条件は、データベースに接続されているデータでのみ使用できます。たとえば、 DataSource シート( データベース、または DataSourcePivotTable: DataSource シートから作成されたピボット テーブルです。

フィルタする列のデータ型は日付である必要があります。

// Gets a pivot table that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Pivot Table Sheet");
let dataPivotTable = ss.getDataSourcePivotTables()[0];
// Creates criteria that only shows cells that don't equal June 16, 2022
// and sets it to the "date" column.
let date = new Date("June 16, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateNotEqualTo(date)
                             .build();
dataPivotTable.addFilter("date", criteria);

パラメータ

名前説明
dateDate非表示にする日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenDateNotEqualToAny(dates)

指定した日付と等しくない日付のセルを表示するフィルタ条件を設定します できます。

この条件は、データベースに接続されているデータでのみ使用できます。たとえば、 DataSource シート( データベース、または DataSourcePivotTable: DataSource シートから作成されたピボット テーブルです。

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "date" column that hides cells with any of the below dates.
let date1 = new Date("June 1, 2022");
let date2 = new Date("June 2, 2022");
let date3 = new Date("June 3, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateNotEqualToAny([date1, date2, date3])
                             .build();
dataSheet.addFilter("date", criteria);

パラメータ

名前説明
datesDate[]非表示にする日付。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenFormulaSatisfied(formula)

指定した数式(=B:B<C:C など)を含むセルを表示するフィルタ条件を設定します。 true と評価されます。

この条件は、データベースに接続されていないデータをフィルタするためにのみ使用できます。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows the rows where the value in column B is less than the value in
// column C and sets it to column A.
let formula = "=B:B<C:C";
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenFormulaSatisfied(formula)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

パラメータ

名前説明
formulaString入力が有効な場合に true と評価されるカスタム数式。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberBetween(start, end)

2 の範囲内またはいずれかである数値のセルを表示するフィルタ条件を設定します 表します。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は数値でなければなりません。条件 データがデータベースに接続されていない場合、フィルタに使用する列のデータ型はデータベースに接続されていません。 は数値にする必要がありますが、そうでない場合は予期しない結果になる可能性があります。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that only shows cells with numbers that fall between 1-25, inclusively,
// and sets it to column A.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberBetween(1, 25)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

パラメータ

名前説明
startNumber表示する最小値。
endNumber表示する最大の数。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberEqualTo(number)

指定した数値と等しい数値のセルを表示するフィルタ条件を設定します。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は数値でなければなりません。条件 データがデータベースに接続されていない場合、フィルタに使用する列のデータ型はデータベースに接続されていません。 は数値にする必要がありますが、そうでない場合は予期しない結果になる可能性があります。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that only shows cells that are equal to 25 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberEqualTo(25)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
numberNumber表示する数値です。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberEqualToAny(numbers)

指定した値のいずれかに等しい数値のセルを表示するフィルタ条件を設定します あります。

この条件は、データベースに接続されているデータでのみ使用できます。たとえば、 DataSource シート( データベース、または DataSourcePivotTable: DataSource シートから作成されたピボット テーブルです。

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "amount" column that only shows cells with the number 10, 20, or 30.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberEqualToAny([10,20,30])
                             .build();
dataSheet.addFilter("amount", criteria);

パラメータ

名前説明
numbersNumber[]表示する数値です。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberGreaterThan(number)

指定した数値より大きい数値を持つセルを表示するようにフィルタ条件を設定します

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は数値でなければなりません。条件 データがデータベースに接続されていない場合、フィルタに使用する列のデータ型はデータベースに接続されていません。 は数値にする必要がありますが、そうでない場合は予期しない結果になる可能性があります。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells greater than 10 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberGreaterThan(10)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
numberNumber非表示にする最大の数。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberGreaterThanOrEqualTo(number)

指定した値以上の数値を持つセルを表示するフィルタ条件を設定します あります。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は数値でなければなりません。条件 データがデータベースに接続されていない場合、フィルタに使用する列のデータ型はデータベースに接続されていません。 は数値にする必要がありますが、そうでない場合は予期しない結果になる可能性があります。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells greater than or equal to 10 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberGreaterThanOrEqualTo(10)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
numberNumber表示する最小値。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberLessThan(number)

指定した数値より小さい数値を含むセルを表示するフィルタ条件を設定します。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は数値でなければなりません。条件 データがデータベースに接続されていない場合、フィルタに使用する列のデータ型はデータベースに接続されていません。 は数値にする必要がありますが、そうでない場合は予期しない結果になる可能性があります。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells less than 10 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberLessThan(10)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
numberNumber非表示にする最小の数値。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberLessThanOrEqualTo(number)

指定した値以下の数値のセルを表示するフィルタ条件を設定します あります。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は数値でなければなりません。条件 データがデータベースに接続されていない場合、フィルタに使用する列のデータ型はデータベースに接続されていません。 は数値にする必要がありますが、そうでない場合は予期しない結果になる可能性があります。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells less than or equal to 10 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberLessThanOrEqualTo(10)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
numberNumber表示する最大の数。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberNotBetween(start, end)

数値が「2」でなく「2」でもない数値のセルを表示するようにフィルタ条件を設定します 表します。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は数値でなければなりません。条件 データがデータベースに接続されていない場合、フィルタに使用する列のデータ型はデータベースに接続されていません。 は数値にする必要がありますが、そうでない場合は予期しない結果になる可能性があります。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that hides cells with numbers that fall between 1-25, inclusively,
// and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberNotBetween(1, 25)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
startNumber最も小さい数字は非表示になります。
endNumber非表示にする最大の数。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberNotEqualTo(number)

指定した数値と等しくない数値を持つセルを表示するフィルタ条件を設定します。

この条件は、どのタイプのフィルタでも使用できます。この条件を データベースに接続する場合、フィルタに使用する列のデータ型は数値でなければなりません。条件 データがデータベースに接続されていない場合、フィルタに使用する列のデータ型はデータベースに接続されていません。 は数値にする必要がありますが、そうでない場合は予期しない結果になる可能性があります。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that hides cells that are equal to 25 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberNotEqualTo(25)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
numberNumber非表示にする数値。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenNumberNotEqualToAny(numbers)

指定した数値と等しくない数値を持つセルを表示するフィルタ条件を設定します あります。

この条件は、データベースに接続されているデータでのみ使用できます。たとえば、 DataSource シート( データベース、または DataSourcePivotTable: DataSource シートから作成されたピボット テーブルです。

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "amount" column that hides cells with the number 10, 20, or 30.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberNotEqualToAny([10,20,30])
                             .build();
dataSheet.addFilter("amount", criteria);

パラメータ

名前説明
numbersNumber[]非表示にする数値です。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenTextContains(text)

指定したテキストを含むテキストを含むセルを表示するフィルタ条件を設定します。テキスト 大文字と小文字は区別されません。

この条件は、どのタイプのフィルタでも使用できます。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells that contain "Northwest" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextContains("Northwest")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
textStringセルに含める必要があるテキスト。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenTextDoesNotContain(text)

指定したテキストを含まないテキストを含むセルを表示するフィルタ条件を設定します。「 大文字と小文字は区別されません。

この条件は、どのタイプのフィルタでも使用できます。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that hides cells that contain "Northwest" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextDoesNotContain("Northwest")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
textStringセルに含めるべきテキスト。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenTextEndsWith(text)

指定したテキストで終わるテキストを含むセルを表示するフィルタ条件を設定します。テキスト 大文字と小文字は区別されません。

この条件は、どのタイプのフィルタでも使用できます。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells with text that ends with "est" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextEndsWith("est")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
textStringセルのテキストの末尾に含める必要があるテキスト。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenTextEqualTo(text)

指定したテキストと等しいテキストを含むセルを表示するフィルタ条件を設定します。テキスト 大文字と小文字は区別されません。

この条件は、どのタイプのフィルタでも使用できます。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells with text that equals "hello" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextEqualTo("hello")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
textStringセルのテキストと等しいテキスト。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenTextEqualToAny(texts)

指定したテキストのいずれかと等しいテキストを含むセルを表示するフィルタ条件を設定します 使用できます。テキストでは大文字と小文字は区別されません。

この条件は、データベースに接続されているデータでのみ使用できます。たとえば、 DataSource シート( データベース、または DataSourcePivotTable: DataSource シートから作成されたピボット テーブルです。

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "category" column that shows cells with the text "tech" or "business."
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextEqualToAny(["tech","business"])
                             .build();
dataSheet.addFilter("category", criteria);

パラメータ

名前説明
textsString[]セルが等しくする必要があるテキスト値。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenTextNotEqualTo(text)

指定したテキストと等しくないテキストを含むセルを表示するフィルタ条件を設定します。「 大文字と小文字は区別されません。

この条件は、データベースに接続されているデータでのみ使用できます。たとえば、 DataSource シート( データベース、または DataSourcePivotTable: DataSource シートから作成されたピボット テーブルです。

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "category" column that hides cells with text equal to "tech."
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextNotEqualTo("tech")
                             .build();
dataSheet.addFilter("category", criteria);

パラメータ

名前説明
textStringセルのテキストが等しくないテキスト。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenTextNotEqualToAny(texts)

指定したものと等しくないテキストを含むセルを表示するフィルタ条件を設定します 使用できます。テキストでは大文字と小文字は区別されません。

この条件は、データベースに接続されているデータでのみ使用できます。たとえば、 DataSource シート( データベース、または DataSourcePivotTable: DataSource シートから作成されたピボット テーブルです。

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "category" column that hides cells with the text "tech" or "business."
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextNotEqualToAny(["tech","business"])
                             .build();
dataSheet.addFilter("category", criteria);

パラメータ

名前説明
textsString[]セルが等しくできないテキスト値。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


whenTextStartsWith(text)

指定したテキストで始まるテキストを含むセルを表示するフィルタ条件を設定します。テキスト 大文字と小文字は区別されません。

この条件は、どのタイプのフィルタでも使用できます。

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells with text that starts with "pre" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextStartsWith("pre")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

パラメータ

名前説明
textStringセルのテキストの先頭に含める必要があるテキスト。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。


withCriteria(criteria, args)

フィルタ条件を、BooleanCriteria 値で定義されたブール値条件に設定します。例: CELL_EMPTY または NUMBER_GREATER_THAN として指定します。ブール型の条件を getCriteriaType()getCriteriaValues() を使用して、このメソッドのパラメータを定義します。 編集することもできます

この条件はどのタイプのフィルタでも使用できますが、一部のBooleanCriteriaは使用できません すべてのフィルタに適用されます。

// Builds a filter criteria that is based on existing boolean conditions from another criteria.
// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Gets the existing boolean conditions applied to Column B and adds criteria to column C that
// has the same boolean conditions and additional criteria that hides the value, "Northwest."
let filter = ss.getFilter();
let filterCriteria = filter.getColumnFilterCriteria(2);
let criteria = SpreadsheetApp.newFilterCriteria()
    .withCriteria(filterCriteria.getCriteriaType(), filterCriteria.getCriteriaValues())
    .setHiddenValues(["Northwest"])
    .build();
filter.setColumnFilterCriteria(3, criteria);

パラメータ

名前説明
criteriaBooleanCriteriaブール型の条件のタイプ。
argsObject[]条件タイプに応じた引数の配列。使用できる引数の数と、 その型は上記の対応する when...() メソッドと一致します。

戻る

FilterCriteriaBuilder - チェーン用のビルダー。