Class FilterCriteria

FilterCriteria

Utilizza questo corso per ottenere informazioni sui filtri esistenti o copiarli.

Utilizzi comuni

Copia criteri

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

Visualizza i valori nascosti dal filtro

Il seguente esempio recupera il filtro che si applica all'intervallo specificato e registra i valori della colonna B nascondi dal filtro.
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);

Metodi

MetodoTipo restituitoBreve descrizione
copy()FilterCriteriaBuilderCopia questo criterio di filtro e crea un generatore di criteri che puoi applicare a un altro filtro.
getCriteriaType()BooleanCriteriaRestituisce il tipo booleano del criterio, ad esempio CELL_EMPTY.
getCriteriaValues()Object[]Restituisce un array di argomenti per criteri booleani.
getHiddenValues()String[]Restituisce i valori che il filtro nasconde.
getVisibleBackgroundColor()ColorRestituisce il colore di sfondo utilizzato come criterio di filtro.
getVisibleForegroundColor()ColorRestituisce 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 questo criterio 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 usi un filtro del foglio, puoi copiare i criteri in un'altra colonna.

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);

Ritorni

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


getCriteriaType()

Restituisce il tipo booleano del criterio, ad esempio CELL_EMPTY. Per scoprire i tipi di criteri booleani, vedi l'enumerazione BooleanCriteria.

Spesso questo metodo viene utilizzato 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 di filtro non è una condizione booleana, restituisce 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);

Ritorni

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


getCriteriaValues()

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

Spesso questo metodo viene utilizzato per aggiungere criteri di condizione booleana a un filtro senza sostituire i criteri esistenti.

  • Per ottenere il tipo di criteri booleano, utilizza getCriteriaType().
  • Per utilizzare il tipo di criteri 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.

    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);

    Ritorni

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


getHiddenValues()

Restituisce i valori che il filtro nasconde.

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

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);

Ritorni

String[]: array di valori nascosti dal filtro.


getVisibleBackgroundColor()

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

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

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);

Ritorni

Color: il colore dello 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 questo criterio con i filtri su Grid fogli, il tipo predefinito di foglio. Restituisce null se chiami questo metodo per altri tipi di filtri.

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);

Ritorni

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


getVisibleValues()

Restituisce i valori mostrati dal filtro della tabella pivot.

Questo criterio è valido solo per i filtri sulle tabelle pivot che non sono connesse a un database. Restituisce un array vuoto per altri tipi di filtri.

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);

Ritorni

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