Questo documento spiega come utilizzare i filtri per ordinare e filtrare i dati mostrati in un foglio di lavoro.
I filtri ti consentono di ordinare e filtrare i dati che vedi quando visualizzi un foglio di lavoro. I filtri non modificano i valori dei dati nel foglio di lavoro. Puoi utilizzare i filtri per nascondere o ordinare temporaneamente le informazioni. I dati che corrispondono ai criteri di filtro specificati non vengono visualizzati quando il filtro è attivo. Con le visualizzazioni filtrate, puoi anche salvare diversi filtri denominati e passare da uno all'altro quando vuoi.
Per filtrare i dati restituiti in una richiesta dell'API Google Sheets, utilizza l'
DataFilter oggetto. Per
saperne di più, consulta Leggere, scrivere e cercare
metadati.
Casi d'uso dei filtri
Di seguito sono riportati alcuni casi d'uso di esempio per i filtri:
- Ordinare i dati in base a una colonna specifica. Ad esempio, ordinare i record utente per cognome.
- Nascondere i dati che soddisfano una condizione specifica. Ad esempio, nascondere tutti i record precedenti a due anni.
- Nascondere i dati che corrispondono a un determinato valore. Ad esempio, nascondere tutti i problemi con stato "Chiuso".
Filtro di base
L'
BasicFilter
oggetto per un foglio di lavoro è il filtro predefinito che viene applicato ogni volta che qualcuno
visualizza il foglio di lavoro. Un foglio di lavoro può avere un solo filtro di base per
foglio. Puoi disattivare il filtro di base
cancellandolo. In questo modo, il filtro e tutte le relative impostazioni vengono rimossi dal
foglio di lavoro. Se vuoi riattivare lo stesso filtro, devi impostare di nuovo i
criteri.
Gestire il filtro di base
Per impostare o cancellare il filtro di base, utilizza il
spreadsheets.batchUpdate
metodo con il tipo di richiesta appropriato:
- Per impostare il filtro di base, utilizza il
SetBasicFilterRequestmetodo. - Per cancellare il filtro di base, utilizza il
ClearBasicFilterRequestmetodo.
Per elencare il filtro di base, utilizza il
spreadsheets.get
metodo e imposta il fields parametro URL su sheets/basicFilter. Il seguente esempio di codice
spreadsheets.get mostra un URL di Fogli Google con una maschera
di campo:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/basicFilter
Visualizzazioni filtrate
A
FilterView
è un filtro denominato che puoi attivare e disattivare quando vuoi. Un foglio può
avere più visualizzazioni filtrate salvate, ma puoi applicarne solo una alla volta. Un foglio
può contenere anche un filtro di base e più visualizzazioni filtrate, ma non puoi
applicarli contemporaneamente nello stesso intervallo di dati.
Casi d'uso delle visualizzazioni filtrate
Di seguito sono riportati alcuni casi d'uso di esempio per le visualizzazioni filtrate:
- Hai diversi filtri diversi che vuoi alternare quando visualizzi i dati.
- Non disponi dell'accesso in modifica a un foglio di lavoro, ma vuoi comunque applicare un filtro. In questo caso, puoi creare una visualizzazione filtrata temporanea visibile solo a te.
Vuoi che ogni persona con cui condividi il foglio di lavoro visualizzi i dati in modo diverso. Puoi specificare la visualizzazione filtrata che vuoi applicare fornendo the
spreadsheetIdandfilterViewIdnell'URL del foglio di lavoro. Per farlo, utilizzafilterViewIdrestituito nella risposta quando crei la visualizzazione filtrata.Il seguente esempio di codice mostra un URL di Fogli con una visualizzazione filtrata:
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit#gid=0&fvid=FILTER_VIEW_ID
Gestire le visualizzazioni filtrate
Per creare, duplicare, modificare o eliminare le visualizzazioni filtrate, utilizza il
spreadsheets.batchUpdate
metodo con il tipo di richiesta appropriato:
- Per creare una visualizzazione filtrata, utilizza il
AddFilterViewRequestmetodo. - Per creare una copia di una visualizzazione filtrata, utilizza il
DuplicateFilterViewRequestmetodo. - Per modificare le proprietà di una visualizzazione filtrata, utilizza il
UpdateFilterViewRequestmetodo. - Per eliminare una visualizzazione filtrata, utilizza il
DeleteFilterViewRequestmetodo.
Per elencare tutte le visualizzazioni filtrate, utilizza il
spreadsheets.get
metodo e imposta il fields parametro URL su sheets/filterViews. Il seguente
spreadsheets.get esempio di codice mostra un URL di Fogli con una maschera
di campo:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/filterViews
Rappresentazione JSON di un filtro
Il seguente esempio di codice mostra la rappresentazione JSON di un
FilterView
oggetto. L'
BasicFilter
oggetto è lo stesso, tranne per il fatto che non ha i campi filterViewId e title e non può utilizzare un intervallo denominato.
{
"filterViewId": number,
"title": string,
"range": {
object(GridRange)
},
"namedRangeId": string,
"sortSpecs": [
{
object(SortSpec)
}
],
"criteria": {
string: {
object(FilterCriteria)
},
...
}
}
Dati delle vendite di esempio
Il resto di questo documento fa riferimento alla seguente tabella di dati delle vendite di esempio:
| A | B | C | D | E | F | G | |
| 1 | Categoria elemento | Numero di modello | Costo | Quantità | Regione | Commerciale | Data di spedizione |
| 2 | Ruota | W-24 | 20,50 $ | 4 | Occidentale | Beth | 01/03/2016 |
| 3 | Porta | D-01X | 15,00 $ | 2 | Meridionale | Amir | 15/03/2016 |
| 4 | Cornice | FR-0B1 | 34,00 $ | 8 | Orientale | Hannah | 12/03/2016 |
| 5 | Riquadro | P-034 | 6,00 $ | 4 | Nord | Devyn | 15/03/2016 |
| 6 | Riquadro | P-052 | 11,50 $ | 7 | Orientale | Erik | 16/05/2016 |
| 7 | Ruota | W-24 | 20,50 $ | 11 | Meridionale | Sheldon | 30/04/2016 |
| 8 | Motore | ENG-0161 | 330,00 $ | 2 | Nord | Jessie | 02/07/2016 |
Specifiche di ordinamento
Un filtro può avere più specifiche di ordinamento. Queste specifiche determinano
la modalità di ordinamento dei dati e vengono applicate nell'ordine specificato. L'
SortSpec.dimensionIndex
attributo specifica l'indice della colonna a cui deve essere applicato l'ordinamento.
Il seguente esempio di codice mostra una specifica di ordinamento:
[
{
"dimensionIndex": 3,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 6,
"sortOrder": "ASCENDING"
}
]
Se applicata ai dati delle vendite di esempio, questa specifica ordina prima in base alla colonna "Quantità" e poi, se due righe hanno la stessa quantità, in base alla "Data di spedizione".
| A | B | C | D | E | F | G | |
| 1 | Categoria elemento | Numero di modello | Costo | Quantità | Regione | Commerciale | Data di spedizione |
| 2 | Porta | D-01X | 15,00 $ | 2 | Meridionale | Amir | 15/03/2016 |
| 3 | Motore | ENG-0161 | 330,00 $ | 2 | Nord | Jessie | 02/07/2016 |
| 4 | Ruota | W-24 | 20,50 $ | 4 | Occidentale | Beth | 01/03/2016 |
| 5 | Riquadro | P-034 | 6,00 $ | 4 | Nord | Devyn | 15/03/2016 |
| 6 | Riquadro | P-052 | 11,50 $ | 7 | Orientale | Erik | 16/05/2016 |
| 7 | Cornice | FR-0B1 | 34,00 $ | 8 | Orientale | Hannah | 12/03/2016 |
| 8 | Ruota | W-24 | 20,50 $ | 11 | Meridionale | Sheldon | 30/04/2016 |
Criteri del filtro
L'
FilterCriteria
oggetto determina quali dati del foglio di lavoro vengono mostrati o nascosti in un filtro di base o
in una visualizzazione filtrata. Ogni criterio dipende dai valori di una colonna specifica. I criteri di filtro vengono forniti come una mappa in cui le chiavi sono gli indici delle colonne e
i valori sono i criteri.
Per i criteri specificati utilizzando una booleana
condition,
la condizione deve essere true affinché i valori vengano mostrati. La condizione non
sostituisce
hiddenValues.
Se un valore è elencato in hiddenValues, tutte le corrispondenze per un valore rimangono
nascoste.
Il seguente esempio di codice mostra una mappa dei criteri di filtro:
{
0: {
'hiddenValues': ['Panel']
},
6: {
'condition': {
'type': 'DATE_BEFORE',
'values': {
'userEnteredValue': '4/30/2016'
}
}
}
}
Se applicati ai dati delle vendite di esempio, questi criteri mostrano solo le righe in cui il valore della colonna "Categoria elemento" non è "Riquadro" e in cui il valore della colonna "Data di spedizione" è precedente al "30 aprile 2016".
| A | B | C | D | E | F | G | |
| 1 | Categoria elemento | Numero di modello | Costo | Quantità | Regione | Commerciale | Data di spedizione |
| 2 | Ruota | W-24 | 20,50 $ | 4 | Occidentale | Beth | 01/03/2016 |
| 3 | Porta | D-01X | 15,00 $ | 2 | Meridionale | Amir | 15/03/2016 |
| 4 | Cornice | FR-0B1 | 34,00 $ | 8 | Orientale | Hannah | 12/03/2016 |
Esempio di codice della visualizzazione filtrata
Il seguente esempio di codice mostra come creare una visualizzazione filtrata, duplicarla e poi aggiornare la versione duplicata utilizzando i dati delle vendite di esempio.