Usa questa classe per modificare i filtri esistenti sui fogli Grid
, il tipo predefinito
in un foglio di calcolo. I fogli della griglia sono fogli normali con dati non collegati a un database.
Se non esiste ancora un filtro nel foglio, creane uno utilizzando Range.createFilter()
.
Per utilizzare questo corso, devi prima accedere al filtro del foglio della griglia utilizzando Range.getFilter()
o Sheet.getFilter()
.
Utilizzi comuni
Rimuovere un filtro
Nell'esempio di seguito, il filtro viene rimosso dal foglio attivo.let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Removes the filter from the active sheet. filter.remove();
Ottieni l'intervallo a cui si applica il filtro
L'esempio di seguito recupera il filtro sul foglio attivo, quindi utilizza il metodogetRange()
da
questa classe per registrare l'intervallo a cui si applica il filtro.
let ss = SpreadsheetApp.getActiveSheet(); // Gets the existing filter on the active sheet. let filter = ss.getFilter(); // Logs the range that the filter applies to in A1 notation. console.log(filter.getRange().getA1Notation());
Metodi
Metodo | Tipo restituito | Breve descrizione |
---|---|---|
getColumnFilterCriteria(columnPosition) | FilterCriteria | Restituisce i criteri di filtro sulla colonna specificata o null se la colonna non ha
criteri di filtro applicati. |
getRange() | Range | Ottiene l'intervallo a cui si applica questo filtro. |
remove() | void | Rimuove questo filtro. |
removeColumnFilterCriteria(columnPosition) | Filter | Rimuove i criteri di filtro dalla colonna specificata. |
setColumnFilterCriteria(columnPosition, filterCriteria) | Filter | Consente di impostare i criteri di filtro sulla colonna specificata. |
sort(columnPosition, ascending) | Filter | Ordina l'intervallo filtrato in base alla colonna specificata, esclusa la prima riga (la riga di intestazione) in l'intervallo a cui si applica questo filtro. |
Documentazione dettagliata
getColumnFilterCriteria(columnPosition)
Restituisce i criteri di filtro sulla colonna specificata o null
se la colonna non ha
criteri di filtro applicati.
Per ulteriori dettagli sui criteri di filtro, concatena questo metodo ai metodi del
FilterCriteria
corso.
let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Gets the filter criteria applied to column B of the active sheet // and logs the hidden values. let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues(); console.log(filterCriteria);
Parametri
Nome | Tipo | Descrizione |
---|---|---|
columnPosition | Integer | La posizione indicizzata 1 della colonna. Ad esempio, l'indice della colonna B è 2. |
Invio
FilterCriteria
: i criteri del filtro.
Autorizzazione
Gli script che utilizzano questo metodo richiedono l'autorizzazione con uno o più dei seguenti ambiti:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRange()
Ottiene l'intervallo a cui si applica questo filtro.
// Gets the existing filter on the active sheet. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Logs the range that the filter applies to in A1 notation. console.log(filter.getRange().getA1Notation());
Invio
Range
: l'intervallo del filtro. Per ottenere l'intervallo in notazione A1, concatena questo metodo a Range.getA1Notation()
.
Autorizzazione
Gli script che utilizzano questo metodo richiedono l'autorizzazione con uno o più dei seguenti ambiti:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
remove()
Rimuove questo filtro.
// Removes the filter from the active sheet. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.remove();
Autorizzazione
Gli script che utilizzano questo metodo richiedono l'autorizzazione con uno o più dei seguenti ambiti:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeColumnFilterCriteria(columnPosition)
Rimuove i criteri di filtro dalla colonna specificata.
// Removes the filter criteria from column B. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.removeColumnFilterCriteria(2);
Parametri
Nome | Tipo | Descrizione |
---|---|---|
columnPosition | Integer | La posizione indicizzata 1 della colonna. Ad esempio, l'indice della colonna B è 2. |
Invio
Filter
: il filtro per il concatenamento.
Autorizzazione
Gli script che utilizzano questo metodo richiedono l'autorizzazione con uno o più dei seguenti ambiti:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setColumnFilterCriteria(columnPosition, filterCriteria)
Consente di impostare i criteri di filtro sulla colonna specificata. Per prima cosa, crea il generatore
dei criteri di filtro
utilizzando SpreadsheetApp.newFilterCriteria()
. Quindi, aggiungi criteri allo strumento di creazione.
utilizzando la classe FilterCriteriaBuilder
. Dopo aver creato i criteri, impostali come
Parametro filterCriteria
per questo metodo.
let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Builds the filter criteria to use as a parameter for setColumnFilterCriteria. const criteria = SpreadsheetApp.newFilterCriteria() .setHiddenValues(["Hello", "World"]) .build(); // Sets the filter criteria for column C. filter.setColumnFilterCriteria(3, criteria);
Parametri
Nome | Tipo | Descrizione |
---|---|---|
columnPosition | Integer | La posizione indicizzata 1 della colonna. Ad esempio, l'indice della colonna B è 2. |
filterCriteria | FilterCriteria | I criteri di filtro da impostare. Se imposti i criteri su null ,
rimuove i criteri di filtro dalla colonna specificata. Puoi anche usare removeColumnFilterCriteria(columnPosition) . |
Invio
Filter
: il filtro per il concatenamento.
Autorizzazione
Gli script che utilizzano questo metodo richiedono l'autorizzazione con uno o più dei seguenti ambiti:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
sort(columnPosition, ascending)
Ordina l'intervallo filtrato in base alla colonna specificata, esclusa la prima riga (la riga di intestazione) in l'intervallo a cui si applica questo filtro.
// Gets the existing filter and sorts it by column B in ascending order. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.sort(2, true);
Parametri
Nome | Tipo | Descrizione |
---|---|---|
columnPosition | Integer | La posizione indicizzata 1 della colonna. Ad esempio, l'indice della colonna B è 2. |
ascending | Boolean | Se true , ordina l'intervallo filtrato in ordine crescente; se false , ordina l'intervallo filtrato in ordine decrescente. |
Invio
Filter
: il filtro per il concatenamento.
Autorizzazione
Gli script che utilizzano questo metodo richiedono l'autorizzazione con uno o più dei seguenti ambiti:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets