Class FilterCriteria

Criterifiltro

Utilizza questa classe per ottenere informazioni sui criteri dei filtri esistenti o per copiarli.

Utilizzi comuni

Copia criteri

L'esempio seguente recupera il filtro applicato all'intervallo A1:C20, recupera i criteri applicati alla colonna C e li copia nella colonna B.
const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
// Copies the filter criteria applied to column C.
const filter = range.getFilter();
const 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);

Visualizzare i valori nascosti dal filtro

Il seguente esempio recupera il filtro applicato all'intervallo specificato e registra i valori della colonna B che il filtro nasconde.
const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
const filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
const filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

Metodi

MetodoTipo restituitoBreve descrizione
copy()FilterCriteriaBuilderCopia questi criteri di filtro e crea un generatore di criteri che puoi applicare a un altro filtro.
getCriteriaType()BooleanCriteria|nullRestituisce il tipo booleano dei criteri, ad esempio CELL_EMPTY.
getCriteriaValues()Object[]Restituisce un array di argomenti per i criteri booleani.
getHiddenValues()String[]Restituisce i valori nascosti dal filtro.
getVisibleBackgroundColor()Color|nullRestituisce il colore di sfondo utilizzato come criterio di filtro.
getVisibleForegroundColor()Color|nullRestituisce il colore di primo piano utilizzato come criterio di filtro.
getVisibleValues()String[]Restituisce i valori mostrati dal filtro della tabella pivot.

Documentazione dettagliata

copy()

Copia questi criteri di filtro e crea un generatore di criteri che puoi applicare a un altro filtro.

Puoi utilizzare questo metodo con qualsiasi tipo di filtro. Se utilizzi un filtro del foglio, puoi copiare i criteri in un'altra colonna.

const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Makes a copy of the filter criteria applied to column C.
const 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);

Indietro

FilterCriteriaBuilder: un generatore di criteri di filtro basato su questi criteri.


getCriteriaType()

Restituisce il tipo booleano dei criteri, ad esempio CELL_EMPTY. Per scoprire di più sui tipi di criteri booleani, consulta l'enumerazione BooleanCriteria.

Le persone spesso utilizzano questo metodo per aggiungere criteri di condizione booleana a un filtro senza sostituire i criteri esistenti.

Puoi utilizzare questo metodo per qualsiasi tipo di filtro. Se i criteri del filtro non sono una condizione booleana, restituisce null.

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

Indietro

BooleanCriteria|null: il tipo di criterio booleano o null se il criterio non è una condizione booleana.


getCriteriaValues()

Restituisce un array di argomenti per i criteri booleani. Alcuni tipi di criteri booleani non hanno argomenti e restituiscono un array vuoto, ad esempio CELL_NOT_EMPTY.

Le persone spesso utilizzano questo metodo per aggiungere criteri di condizione booleana a un filtro senza sostituire i criteri esistenti.

  • Per ottenere il tipo di criterio booleano, utilizza getCriteriaType().
  • Per utilizzare il tipo di criterio e i valori dei criteri per creare o modificare un criterio di filtro, consulta FilterCriteriaBuilder.withCriteria(criteria, args).

    Puoi utilizzare questo metodo per qualsiasi tipo di filtro.

    const ss = SpreadsheetApp.getActiveSheet();
    const 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.
    const criteriaValues = filter.getColumnFilterCriteria(2).getCriteriaValues();
    console.log(criteriaValues);

    Indietro

    Object[]: un array di argomenti appropriati per il tipo di criteri booleani. Il numero di argomenti e il relativo tipo corrispondono al metodo when...() corrispondente della classe FilterCriteriaBuilder.


getHiddenValues()

Restituisce i valori nascosti dal filtro.

Utilizza questi criteri con i filtri nei fogli Grid, il tipo di foglio predefinito. Restituisce null se chiami questo metodo per altri tipi di filtri.

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

Indietro

String[]: un array di valori che il filtro nasconde.


getVisibleBackgroundColor()

Restituisce il colore di sfondo utilizzato come criterio di filtro. Le celle con questo colore di sfondo rimangono visibili.

Utilizza questi criteri con i filtri nei fogli Grid, il tipo di foglio predefinito. Restituisce null se chiami questo metodo per altri tipi di filtri.

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

Indietro

Color|null: il colore di sfondo utilizzato come criterio di filtro.


getVisibleForegroundColor()

Restituisce il colore di primo piano utilizzato come criterio di filtro. Le celle con questo colore in primo piano rimangono visibili.

Utilizza questi criteri con i filtri nei fogli Grid, il tipo di foglio predefinito. Restituisce null se chiami questo metodo per altri tipi di filtri.

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

Indietro

Color|null: il colore di primo piano utilizzato come criterio di filtro.


getVisibleValues()

Restituisce i valori mostrati dal filtro della tabella pivot.

Questi criteri sono validi solo per i filtri delle tabelle pivot non collegate a un database. Restituisce un array vuoto per altri tipi di filtri.

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

Indietro

String[]: un array di valori mostrati dal filtro della tabella pivot.