ExcelScript.AutoFilter interface

オブジェクトを AutoFilter 表します。 オートフィルターを使用すると、Excel 列の値がセルの内容に基づいて特定のフィルターに変換されます。

注釈

/**
 * This script creates an autoFilter on the worksheet that filters out rows based on column values. 
 * The autoFilter filters to only include rows that have a value in column C in the lowest 10 values 
 * (of column C values).
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the autoFilter of the first table in the current worksheet.
  const currentSheet = workbook.getActiveWorksheet();
  const dataRange = currentSheet.getUsedRange();
  const autoFilter = currentSheet.getAutoFilter();

  // Add a filter that will only show the rows with the lowest 10 values in column C
  // (index 2, assuming the used range spans from at least A:C).
  autoFilter.apply(dataRange, 2, {
    criterion1: "10",
    filterOn: ExcelScript.FilterOn.bottomItems
  });
}

メソッド

apply(range, columnIndex, criteria)

範囲にオートフィルターを適用します。 列インデックスやフィルター条件が指定されている場合、列にフィルターを適用します。

clearColumnCriteria(columnIndex)

オートフィルターの列フィルター条件をクリアします。

clearCriteria()

オートフィルターのフィルター条件と並べ替えの状態をクリアします。

getCriteria()

オートフィルターが適用された範囲のすべてのフィルター条件を保持する配列です。

getEnabled()

オートフィルターが有効かどうかを指定します。

getIsDataFiltered()

オートフィルターにフィルター条件があるかどうかを指定します。

getRange()

オートフィルターが Range 適用される範囲を表す オブジェクトを返します。 AutoFilter に関連付けられているオブジェクトがない Range 場合、このメソッドは を返します undefined

reapply()

範囲に現在指定されている AutoFilter オブジェクトを適用します。

remove()

範囲の AutoFilter を削除します。

メソッドの詳細

apply(range, columnIndex, criteria)

範囲にオートフィルターを適用します。 列インデックスやフィルター条件が指定されている場合、列にフィルターを適用します。

apply(
            range: Range | string,
            columnIndex?: number,
            criteria?: FilterCriteria
        ): void;

パラメーター

range

ExcelScript.Range | string

オートフィルターが適用される範囲。

columnIndex

number

オートフィルターが適用される 0 から始まる列インデックス。

criteria
ExcelScript.FilterCriteria

フィルター条件。

戻り値

void

/**
 * This script applies a filter to a table so that 
 * only rows with values in column 1 that start with "L" are shown.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the autoFilter of the first table in the current worksheet.
  const table = workbook.getActiveWorksheet().getTables()[0];
  const autoFilter = table.getAutoFilter();

  // Filter to only include values that start with "L".
  const filterCriteria: ExcelScript.FilterCriteria = {
    filterOn: ExcelScript.FilterOn.custom,
    criterion1: "L*"
  };
  
  // Apply the filter to column 1 (zero-based).
  autoFilter.apply(table.getRange(), 1, filterCriteria);
}

clearColumnCriteria(columnIndex)

オートフィルターの列フィルター条件をクリアします。

clearColumnCriteria(columnIndex: number): void;

パラメーター

columnIndex

number

クリアする必要がある列フィルターを表す、0 から始まる列インデックス。 インデックス値がサポートされていない場合 (たとえば、値が負の数の場合、または値が範囲内の使用可能な InvalidArgument 列の数を超える場合)、エラーがスローされます。

戻り値

void

clearCriteria()

オートフィルターのフィルター条件と並べ替えの状態をクリアします。

clearCriteria(): void;

戻り値

void

/**
 * This script clears any applied criteria from the worksheet's autoFilter.
 */
function main(workbook: ExcelScript.Workbook) {
  const currentSheet = workbook.getActiveWorksheet();

  // Clear all the criteria currently applied to the autoFilter.
  currentSheet.getAutoFilter().clearCriteria();
}

getCriteria()

オートフィルターが適用された範囲のすべてのフィルター条件を保持する配列です。

getCriteria(): FilterCriteria[];

戻り値

getEnabled()

オートフィルターが有効かどうかを指定します。

getEnabled(): boolean;

戻り値

boolean

getIsDataFiltered()

オートフィルターにフィルター条件があるかどうかを指定します。

getIsDataFiltered(): boolean;

戻り値

boolean

getRange()

オートフィルターが Range 適用される範囲を表す オブジェクトを返します。 AutoFilter に関連付けられているオブジェクトがない Range 場合、このメソッドは を返します undefined

getRange(): Range;

戻り値

reapply()

範囲に現在指定されている AutoFilter オブジェクトを適用します。

reapply(): void;

戻り値

void

remove()

範囲の AutoFilter を削除します。

remove(): void;

戻り値

void