Class FilterCriteriaBuilder

FilterCriteriaBuilder

Generatore per i criteri di filtro. Per aggiungere criteri a un filtro, devi procedere nel seguente modo:

  1. Crea il generatore di criteri utilizzando SpreadsheetApp.newFilterCriteria().
  2. Aggiungi le impostazioni al generatore utilizzando i metodi di questa classe.
  3. Utilizza build() per assemblare i criteri con le impostazioni specificate.

Utilizzi comuni

Nascondere i valori in un foglio

Il seguente esempio recupera il filtro esistente di un foglio e aggiunge criteri che nascondono le celle della colonna C contenenti "hello" o "world". I criteri in questo esempio possono essere utilizzati solo con i filtri dei fogli Grid, il tipo di foglio predefinito.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
const criteria = SpreadsheetApp.newFilterCriteria()
                     .setHiddenValues(['hello', 'world'])
                     .build();
filter.setColumnFilterCriteria(3, criteria);

Mostra solo le celle non vuote

Il seguente esempio aggiunge un filtro a un foglio DataSource, un foglio collegato a un database, con criteri che mostrano solo le celle della colonna "Categoria" che non sono vuote.
// Gets the sheet named "Connected sheet," which is connected to a database.
const sheet = SpreadsheetApp.getActiveSpreadsheet()
                  .getSheetByName('Connected sheet')
                  .asDataSourceSheet();
// Creates criteria that only shows non-empty cells.
const criteria = SpreadsheetApp.newFilterCriteria().whenCellNotEmpty().build();
// Applies the criteria to the column named "Category."
sheet.addFilter('Category', criteria);

Metodi

MetodoTipo restituitoBreve descrizione
build()FilterCriteriaConsente di assemblare i criteri di filtro utilizzando le impostazioni aggiunte al generatore di criteri.
copy()FilterCriteriaBuilderCopia questi criteri di filtro e crea un generatore di criteri che puoi applicare a un altro filtro.
getCriteriaType()BooleanCriteriaRestituisce 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()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 visualizzati dal filtro della tabella pivot.
setHiddenValues(values)FilterCriteriaBuilderImposta i valori da nascondere.
setVisibleBackgroundColor(visibleBackgroundColor)FilterCriteriaBuilderImposta il colore di sfondo utilizzato come criterio di filtro.
setVisibleForegroundColor(visibleForegroundColor)FilterCriteriaBuilderImposta il colore di primo piano utilizzato come criterio di filtro.
setVisibleValues(values)FilterCriteriaBuilderImposta i valori da mostrare in una tabella pivot.
whenCellEmpty()FilterCriteriaBuilderImposta i criteri di filtro in modo da mostrare le celle vuote.
whenCellNotEmpty()FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle non vuote.
whenDateAfter(date)FilterCriteriaBuilderImposta i criteri di filtro che mostrano le celle con date successive alla data specificata.
whenDateAfter(date)FilterCriteriaBuilderImposta i criteri di filtro che mostrano le celle con date successive alla data relativa specificata.
whenDateBefore(date)FilterCriteriaBuilderImposta i criteri di filtro che mostrano le celle con date precedenti alla data specificata.
whenDateBefore(date)FilterCriteriaBuilderImposta i criteri di filtro che mostrano le celle con date precedenti alla data relativa specificata.
whenDateEqualTo(date)FilterCriteriaBuilderImposta i criteri di filtro che mostrano le celle con date uguali alla data specificata.
whenDateEqualTo(date)FilterCriteriaBuilderImposta i criteri di filtro che mostrano le celle con date uguali alla data relativa specificata.
whenDateEqualToAny(dates)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con date uguali a una delle date specificate.
whenDateNotEqualTo(date)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle che non corrispondono alla data specificata.
whenDateNotEqualToAny(dates)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con date diverse da quelle specificate.
whenFormulaSatisfied(formula)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con una formula specificata (ad es. =B:B<C:C) che dà un valore di true.
whenNumberBetween(start, end)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero compreso tra due numeri specificati o che corrisponde a uno di questi.
whenNumberEqualTo(number)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero uguale a quello specificato.
whenNumberEqualToAny(numbers)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero uguale a uno dei numeri specificati.
whenNumberGreaterThan(number)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero maggiore di quello specificato
whenNumberGreaterThanOrEqualTo(number)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero maggiore o uguale a quello specificato.
whenNumberLessThan(number)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero inferiore a quello specificato.
whenNumberLessThanOrEqualTo(number)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero minore o uguale a quello specificato.
whenNumberNotBetween(start, end)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero non compreso tra due numeri specificati e che non è nessuno dei due.
whenNumberNotEqualTo(number)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero diverso da quello specificato.
whenNumberNotEqualToAny(numbers)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con un numero diverso da uno dei numeri specificati.
whenTextContains(text)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con testo contenente il testo specificato.
whenTextDoesNotContain(text)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con testo che non contiene il testo specificato.
whenTextEndsWith(text)FilterCriteriaBuilderImposta i criteri di filtro in modo da mostrare le celle con il testo che termina con il testo specificato.
whenTextEqualTo(text)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con testo uguale a quello specificato.
whenTextEqualToAny(texts)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con testo uguale a uno qualsiasi dei valori di testo specificati.
whenTextNotEqualTo(text)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con testo diverso da quello specificato.
whenTextNotEqualToAny(texts)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con testo diverso da uno dei valori specificati.
whenTextStartsWith(text)FilterCriteriaBuilderImposta i criteri di filtro per mostrare le celle con testo che inizia con il testo specificato.
withCriteria(criteria, args)FilterCriteriaBuilderImposta i criteri di filtro su una condizione booleana definita dai valori BooleanCriteria, ad esempio CELL_EMPTY o NUMBER_GREATER_THAN.

Documentazione dettagliata

build()

Consente di assemblare i criteri di filtro utilizzando le impostazioni aggiunte al generatore di criteri.

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

Invio

FilterCriteria: una rappresentazione dei criteri di filtro.


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

Invio

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


getCriteriaType()

Restituisce il tipo booleano dei criteri, ad esempio CELL_EMPTY. Per scoprire i tipi di criteri booleani, consulta l'enum BooleanCriteria.

Questo metodo viene spesso utilizzato per aggiungere criteri di condizione booleana a un filtro senza sostituire quelli esistenti.

Puoi utilizzare questo metodo per qualsiasi tipo di filtro. Se i criteri di 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);

Invio

BooleanCriteria: il tipo di criteri booleani o null se i criteri non sono 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.

Questo metodo viene spesso utilizzato per aggiungere criteri di condizione booleana a un filtro senza sostituire quelli esistenti.

  • Per ottenere il tipo di criteri booleani, utilizza getCriteriaType().
  • Per utilizzare il tipo di criteri e i valori dei criteri per creare o modificare i criteri di un filtro, consulta 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);

    Invio

    Object[]: un array di argomenti appropriati al 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);

Invio

String[]: un 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 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);

Invio

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

Invio

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


getVisibleValues()

Restituisce i valori visualizzati dal filtro della tabella pivot.

Questi criteri si applicano solo ai 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);

Invio

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


setHiddenValues(values)

Imposta i valori da nascondere. Cancella eventuali valori visibili o nascosti esistenti.

Puoi utilizzare questi criteri solo per i filtri dei fogli Grid, il tipo di foglio predefinito.

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

Parametri

NomeTipoDescrizione
valuesString[]L'elenco dei valori da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.

Lanci

Error: se uno dei valori è null.


setVisibleBackgroundColor(visibleBackgroundColor)

Imposta il colore di sfondo utilizzato come criterio di filtro. Le celle con questo colore di sfondo rimangono visibili. L'impostazione di un criterio di filtro del colore di sfondo rimuove eventuali criteri di filtro del colore correnti da questo generatore.

Puoi utilizzare questi criteri solo per i filtri dei fogli Grid, il tipo di foglio predefinito.

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

Parametri

NomeTipoDescrizione
visibleBackgroundColorColorIl colore di sfondo da impostare. Il colore deve essere di stile RGB. Questo metodo non supporta i colori del tema.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


setVisibleForegroundColor(visibleForegroundColor)

Imposta il colore di primo piano utilizzato come criterio di filtro. Le celle con questo colore in primo piano rimangono visibili. L'impostazione di un criterio di filtro del colore di primo piano rimuove tutti i criteri di filtro del colore correnti da questo generatore.

Puoi utilizzare questi criteri solo per i filtri dei fogli Grid, il tipo di foglio predefinito.

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

Parametri

NomeTipoDescrizione
visibleForegroundColorColorIl colore di primo piano da impostare. Il colore deve essere di stile RGB. Questo metodo non supporta i colori del tema.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


setVisibleValues(values)

Imposta i valori da mostrare in una tabella pivot. Cancella eventuali valori visibili o nascosti esistenti.

Puoi utilizzare questi criteri solo per i filtri delle tabelle pivot non collegate a un database.

// 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."
const pivotTable = ss.getPivotTables()[0];
const criteria = SpreadsheetApp.newFilterCriteria()
                     .setVisibleValues(['Northeast', 'Southwest'])
                     .build();
pivotTable.addFilter(2, criteria);

Parametri

NomeTipoDescrizione
valuesString[]L'elenco dei valori da mostrare.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.

Lanci

Error: se uno dei valori è null.


whenCellEmpty()

Imposta i criteri di filtro in modo da mostrare le celle vuote.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro.

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

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenCellNotEmpty()

Imposta i criteri di filtro per mostrare le celle non vuote.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro.

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

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateAfter(date)

Imposta i criteri di filtro che mostrano le celle con date successive alla data specificata.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale esegui il filtro deve essere una data. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro non deve essere una data, ma in caso contrario potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
dateDateLa data più recente da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateAfter(date)

Imposta i criteri di filtro che mostrano le celle con date successive alla data relativa specificata. Per visualizzare le opzioni relative alla data, consulta Enum RelativeDate.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale esegui il filtro deve essere una data. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro non deve essere una data, ma in caso contrario potresti ottenere risultati imprevisti.

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

const criteria = SpreadsheetApp.newFilterCriteria()
                     .whenDateAfter(SpreadsheetApp.RelativeDate.TODAY)
                     .build();
filter.setColumnFilterCriteria(1, criteria);

Parametri

NomeTipoDescrizione
dateRelativeDateLa data relativa più recente.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateBefore(date)

Imposta i criteri di filtro che mostrano le celle con date precedenti alla data specificata.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale esegui il filtro deve essere una data. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro non deve essere una data, ma in caso contrario potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
dateDateLa data più antica da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateBefore(date)

Imposta i criteri di filtro che mostrano le celle con date precedenti alla data relativa specificata. Per visualizzare le opzioni relative alla data, consulta Enum RelativeDate.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale esegui il filtro deve essere una data. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro non deve essere una data, ma in caso contrario potresti ottenere risultati imprevisti.

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

const criteria = SpreadsheetApp.newFilterCriteria()
                     .whenDateBefore(SpreadsheetApp.RelativeDate.TODAY)
                     .build();
filter.setColumnFilterCriteria(1, criteria);

Parametri

NomeTipoDescrizione
dateRelativeDateLa data relativa più antica da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateEqualTo(date)

Imposta i criteri di filtro che mostrano le celle con date uguali alla data specificata.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale esegui il filtro deve essere una data. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro non deve essere una data, ma in caso contrario potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
dateDateLa data a cui devono corrispondere i valori delle celle.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateEqualTo(date)

Imposta i criteri di filtro che mostrano le celle con date uguali alla data relativa specificata. Per visualizzare le opzioni relative alla data, consulta Enum RelativeDate.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale esegui il filtro deve essere una data. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro non deve essere una data, ma in caso contrario potresti ottenere risultati imprevisti.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
const filter = range.getFilter();
// Creates criteria that only shows cells with dates that fall within the past
// month and sets it to column A.

const criteria = SpreadsheetApp.newFilterCriteria()
                     .whenDateEqualTo(SpreadsheetApp.RelativeDate.PAST_MONTH)
                     .build();
filter.setColumnFilterCriteria(1, criteria);

Parametri

NomeTipoDescrizione
dateRelativeDateLa data relativa a cui devono corrispondere i valori delle celle.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateEqualToAny(dates)

Imposta i criteri di filtro per mostrare le celle con date uguali a una delle date specificate.

Puoi utilizzare questi criteri solo con i dati collegati a un database. Ad esempio, utilizza questi criteri con i filtri in un foglio DataSource, un foglio collegato a un database o un DataSourcePivotTable, una tabella pivot creata da un foglio DataSource.

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

Parametri

NomeTipoDescrizione
datesDate[]Le date da mostrare.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateNotEqualTo(date)

Imposta i criteri di filtro per mostrare le celle che non corrispondono alla data specificata.

Puoi utilizzare questi criteri solo con i dati collegati a un database. Ad esempio, utilizza questi criteri con i filtri in un foglio DataSource, un foglio collegato a un database o un DataSourcePivotTable, una tabella pivot creata da un foglio DataSource.

Il tipo di dati della colonna in base alla quale esegui il filtro deve essere una data.

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

Parametri

NomeTipoDescrizione
dateDateLa data da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenDateNotEqualToAny(dates)

Imposta i criteri di filtro per mostrare le celle con date diverse da quelle specificate.

Puoi utilizzare questi criteri solo con i dati collegati a un database. Ad esempio, utilizza questi criteri con i filtri in un foglio DataSource, un foglio collegato a un database o un DataSourcePivotTable, una tabella pivot creata da un foglio DataSource.

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

Parametri

NomeTipoDescrizione
datesDate[]Le date da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenFormulaSatisfied(formula)

Imposta i criteri di filtro per mostrare le celle con una formula specificata (ad es. =B:B<C:C) che dà un valore di true.

Puoi utilizzare questi criteri solo per filtrare i dati non collegati a un database.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
const 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.
const formula = '=B:B<C:C';
const criteria =
    SpreadsheetApp.newFilterCriteria().whenFormulaSatisfied(formula).build();
filter.setColumnFilterCriteria(1, criteria);

Parametri

NomeTipoDescrizione
formulaStringUna formula personalizzata che restituisce true se l'input è valido.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberBetween(start, end)

Imposta i criteri di filtro per mostrare le celle con un numero compreso tra due numeri specificati o che corrisponde a uno di questi.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro deve essere un numero. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale viene applicato il filtro non deve essere un numero, ma se non lo è, potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
startNumberIl numero più basso da mostrare.
endNumberIl numero più alto da mostrare.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberEqualTo(number)

Imposta i criteri di filtro per mostrare le celle con un numero uguale a quello specificato.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro deve essere un numero. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale viene applicato il filtro non deve essere un numero, ma se non lo è, potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
numberNumberIl numero da mostrare.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberEqualToAny(numbers)

Imposta i criteri di filtro per mostrare le celle con un numero uguale a uno dei numeri specificati.

Puoi utilizzare questi criteri solo con i dati collegati a un database. Ad esempio, utilizza questi criteri con i filtri in un foglio DataSource, un foglio collegato a un database o un DataSourcePivotTable, una tabella pivot creata da un foglio DataSource.

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

Parametri

NomeTipoDescrizione
numbersNumber[]I numeri da mostrare.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberGreaterThan(number)

Imposta i criteri di filtro per mostrare le celle con un numero maggiore di quello specificato

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro deve essere un numero. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale viene applicato il filtro non deve essere un numero, ma se non lo è, potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
numberNumberIl numero più alto da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberGreaterThanOrEqualTo(number)

Imposta i criteri di filtro per mostrare le celle con un numero maggiore o uguale a quello specificato.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro deve essere un numero. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale viene applicato il filtro non deve essere un numero, ma se non lo è, potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
numberNumberIl numero più basso da mostrare.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberLessThan(number)

Imposta i criteri di filtro per mostrare le celle con un numero inferiore a quello specificato.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro deve essere un numero. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale viene applicato il filtro non deve essere un numero, ma se non lo è, potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
numberNumberIl numero più basso da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberLessThanOrEqualTo(number)

Imposta i criteri di filtro per mostrare le celle con un numero minore o uguale a quello specificato.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro deve essere un numero. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale viene applicato il filtro non deve essere un numero, ma se non lo è, potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
numberNumberIl numero più alto da mostrare.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberNotBetween(start, end)

Imposta i criteri di filtro per mostrare le celle con un numero non compreso tra due numeri specificati e che non è nessuno dei due.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro deve essere un numero. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale viene applicato il filtro non deve essere un numero, ma se non lo è, potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
startNumberIl numero più basso è nascosto.
endNumberIl numero più alto da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberNotEqualTo(number)

Imposta i criteri di filtro per mostrare le celle con un numero diverso da quello specificato.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro. Se utilizzi questi criteri con dati collegati a un database, il tipo di dati della colonna in base alla quale applichi il filtro deve essere un numero. Se i dati non sono collegati a un database, il tipo di dati della colonna in base alla quale viene applicato il filtro non deve essere un numero, ma se non lo è, potresti ottenere risultati imprevisti.

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

Parametri

NomeTipoDescrizione
numberNumberIl numero da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenNumberNotEqualToAny(numbers)

Imposta i criteri di filtro per mostrare le celle con un numero diverso da uno dei numeri specificati.

Puoi utilizzare questi criteri solo con i dati collegati a un database. Ad esempio, utilizza questi criteri con i filtri in un foglio DataSource, un foglio collegato a un database o un DataSourcePivotTable, una tabella pivot creata da un foglio DataSource.

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

Parametri

NomeTipoDescrizione
numbersNumber[]I numeri da nascondere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenTextContains(text)

Imposta i criteri di filtro per mostrare le celle con testo contenente il testo specificato. Il testo non è sensibile alle maiuscole.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro.

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

Parametri

NomeTipoDescrizione
textStringIl testo che la cella deve contenere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenTextDoesNotContain(text)

Imposta i criteri di filtro per mostrare le celle con testo che non contiene il testo specificato. Il testo non è sensibile alle maiuscole.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro.

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

Parametri

NomeTipoDescrizione
textStringIl testo che la cella non deve contenere.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenTextEndsWith(text)

Imposta i criteri di filtro in modo da mostrare le celle con il testo che termina con il testo specificato. Il testo non è sensibile alle maiuscole.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro.

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

Parametri

NomeTipoDescrizione
textStringIl testo che deve contenere la fine del testo della cella.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenTextEqualTo(text)

Imposta i criteri di filtro per mostrare le celle con il testo uguale a quello specificato. Il testo non è sensibile alle maiuscole.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro.

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

Parametri

NomeTipoDescrizione
textStringIl testo a cui deve corrispondere il testo della cella.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenTextEqualToAny(texts)

Imposta i criteri di filtro per mostrare le celle con testo uguale a uno qualsiasi dei valori di testo specificati. Il testo non è sensibile alle maiuscole.

Puoi utilizzare questi criteri solo con i dati collegati a un database. Ad esempio, utilizza questi criteri con i filtri in un foglio DataSource, un foglio collegato a un database o un DataSourcePivotTable, una tabella pivot creata da un foglio DataSource.

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

Parametri

NomeTipoDescrizione
textsString[]I valori di testo a cui deve corrispondere una cella.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenTextNotEqualTo(text)

Imposta i criteri di filtro per mostrare le celle con testo diverso da quello specificato. Il testo non è sensibile alle maiuscole.

Puoi utilizzare questi criteri solo con i dati collegati a un database. Ad esempio, utilizza questi criteri con i filtri in un foglio DataSource, un foglio collegato a un database o un DataSourcePivotTable, una tabella pivot creata da un foglio DataSource.

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

Parametri

NomeTipoDescrizione
textStringIl testo a cui non può corrispondere il testo della cella.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenTextNotEqualToAny(texts)

Imposta i criteri di filtro per mostrare le celle con testo diverso da uno dei valori specificati. Il testo non è sensibile alle maiuscole.

Puoi utilizzare questi criteri solo con i dati collegati a un database. Ad esempio, utilizza questi criteri con i filtri in un foglio DataSource, un foglio collegato a un database o un DataSourcePivotTable, una tabella pivot creata da un foglio DataSource.

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

Parametri

NomeTipoDescrizione
textsString[]I valori di testo a cui una cella non può essere uguale.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


whenTextStartsWith(text)

Imposta i criteri di filtro per mostrare le celle con testo che inizia con il testo specificato. Il testo non è sensibile alle maiuscole.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro.

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

Parametri

NomeTipoDescrizione
textStringIl testo che deve contenere l'inizio del testo della cella.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.


withCriteria(criteria, args)

Imposta i criteri di filtro su una condizione booleana definita dai valori BooleanCriteria, ad esempio CELL_EMPTY o NUMBER_GREATER_THAN. Per copiare la condizione booleana dai criteri esistenti, definisci i parametri per questo metodo utilizzando getCriteriaType() e getCriteriaValues() in un criterio esistente.

Puoi utilizzare questi criteri con qualsiasi tipo di filtro, ma alcuni BooleanCriteria non sono applicabili a tutti i filtri.

// 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();
const 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."
const filterCriteria = filter.getColumnFilterCriteria(2);
const criteria = SpreadsheetApp.newFilterCriteria()
                     .withCriteria(
                         filterCriteria.getCriteriaType(),
                         filterCriteria.getCriteriaValues(),
                         )
                     .setHiddenValues(['Northwest'])
                     .build();
filter.setColumnFilterCriteria(3, criteria);

Parametri

NomeTipoDescrizione
criteriaBooleanCriteriaIl tipo di criteri booleani.
argsObject[]Un array di argomenti appropriati al tipo di criteri; il numero di argomenti e il loro tipo corrispondono ai metodi when...() corrispondenti sopra indicati.

Invio

FilterCriteriaBuilder: questo generatore, per l'accodamento.