Filtreler, bir e-tabloyu görüntülerken gördüğünüz verileri sıralamanıza ve filtrelemenize olanak tanır. Filtreler, e-tablonuzdaki veri değerlerini değiştirmez. Bilgileri geçici olarak gizlemek veya sıralamak için filtreleri kullanabilirsiniz. Belirtilen filtre ölçütleriyle eşleşen veriler, filtre etkinken görünmez. Filtre görünümleri ile farklı adlandırılmış filtreleri de kaydedebilir ve istediğiniz zaman bunlar arasında geçiş yapabilirsiniz.
Aşağıda, filtrelere ilişkin bazı örnek kullanım alanları verilmiştir:
- Verileri belirli bir sütuna göre sıralayın. Örneğin, kullanıcı kayıtlarını soyadına göre sıralayın.
- Belirli bir koşulu karşılayan verileri gizleme Örneğin, 2 yıldan eski tüm kayıtları gizleyebilirsiniz.
- Belirli bir değerle eşleşen verileri gizleme. Örneğin, durumu "kapalı" olan tüm sorunları gizleyin.
Temel filtre
Bir e-tablonun BasicFilter, e-tabloyu görüntüleyen herkes için uygulanan varsayılan filtredir. Bir e-tabloda her sayfa için bir temel filtre olabilir. Temel filtreyi temizleyerek devre dışı bırakabilirsiniz. Bu işlem, filtreyi ve tüm ayarlarını e-tablodan kaldırır.
Aynı filtreyi tekrar etkinleştirmek isterseniz ölçütleri yeniden ayarlamanız gerekir.
Temel filtreyi yönetme
Temel filtreyi ayarlamak veya temizlemek için uygun istek türüyle birlikte spreadsheets.batchUpdate yöntemini kullanın:
- Temel filtreyi ayarlamak için
SetBasicFilterRequestyöntemini kullanın. - Temel filtreyi temizlemek için
ClearBasicFilterRequestyöntemini kullanın.
Temel filtreyi listelemek için spreadsheets.get yöntemini kullanın ve fields URL parametresini sheets/basicFilter olarak ayarlayın. Aşağıdaki spreadsheets.get kod örneğinde, alan maskesi içeren bir Google E-Tablolar URL'si gösterilmektedir:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/basicFilter)
Filtre görünümleri
FilterView
istediğiniz zaman kapatıp açabileceğiniz adlandırılmış bir filtredir. Bir e-tabloda birden fazla filtre görünümü olabilir ancak aynı anda yalnızca birini uygulayabilirsiniz.
Filtre görünümleriyle ilgili bazı örnek kullanım alanları:
- Verileri görüntülerken aralarında geçiş yapmak istediğiniz birkaç farklı filtreniz var.
- Bir e-tabloya düzenleme erişiminiz yok ancak yine de filtre uygulamak istiyorsunuz. Bu durumda, yalnızca sizin görebileceğiniz geçici bir filtre görünümü oluşturabilirsiniz.
E-tablonuzu paylaştığınız her kişinin verileri farklı şekilde görüntülemesini istiyorsanız. E-tablo URL'sinde
spreadsheetIdvefilterViewIddeğerlerini sağlayarak uygulamak istediğiniz filtre görünümünü belirtebilirsiniz. Bunu yapmak için filtre görünümünü oluştururken yanıtta döndürülenfilterViewIdöğesini kullanın.Aşağıdaki kod örneğinde, filtre görünümü içeren bir Google E-Tablolar URL'si gösterilmektedir:
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit#gid=0&fvid=FILTER_VIEW_ID
Filtre görünümlerini yönetme
Filtre görünümleri oluşturmak, çoğaltmak, değiştirmek veya silmek için uygun istek türüne sahip spreadsheets.batchUpdate yöntemini kullanın:
- Filtre görünümü oluşturmak için
AddFilterViewRequestyöntemini kullanın. - Filtre görünümünün kopyasını oluşturmak için
DuplicateFilterViewRequestyöntemini kullanın. - Bir filtre görünümünün özelliklerini değiştirmek için
UpdateFilterViewRequestyöntemini kullanın. - Filtre görünümünü silmek için
DeleteFilterViewRequestyöntemini kullanın.
Tüm filtre görünümlerinizi listelemek için
spreadsheets.get
yöntemini kullanın ve fields URL parametresini sheets/filterViews olarak ayarlayın. Aşağıdaki spreadsheets.get kod örneğinde, alan maskesi içeren bir Google E-Tablolar URL'si gösterilmektedir:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/filterViews)
Filtre gösterimi
Aşağıdaki kod örneğinde, bir FilterView nesnesinin JSON gösterimi yer almaktadır. BasicFilter
nesnesi, filterViewId ve title alanlarının olmaması ve adlandırılmış aralık kullanamaması dışında aynıdır.
{
"filterViewId": number,
"title": string,
"range": {
object(GridRange)
},
"namedRangeId": string,
"sortSpecs": [
{
object(SortSpec)
}
],
"criteria": {
string: {
object(FilterCriteria)
},
...
}
}
Örnek veriler
Bu belgenin geri kalanında, aşağıdaki örnek satış verileri tablosuna referans verilmektedir:
| A | B | C | D | E | F | G | |
| 1 | Öğe Kategorisi | Model Numarası | Maliyet | Miktar | Bölge | Satış görevlisi | Kargo Tarihi |
| 2 | Tekerlek | W-24 | 20,50 ABD doları | 4 | Batı | Beth | 01.03.2016 |
| 3 | Kapı | D-01X | 15 TL | 2 | Güney | Amir | 15.03.2016 |
| 4 | Çerçeve | FR-0B1 | 34,00 ABD doları | 8 | Doğu | Hannah | 12.03.2016 |
| 5 | Panel | P-034 | 6,00 ABD doları | 4 | Kuzey | Devyn | 15.03.2016 |
| 6 | Panel | P-052 | 11,50 ABD doları | 7 | Doğu | Erik | 16.05.2016 |
| 7 | Tekerlek | W-24 | 20,50 ABD doları | 11 | Güney | Sheldon | 30.04.2016 |
| 8 | Motor | ENG-0161 | $330,00 | 2 | Kuzey | Jessie | 02.07.2016 |
Sıralama özellikleri
Bir filtrede birden fazla sıralama özelliği olabilir. Bu özellikler, verilerin nasıl sıralanacağını belirler ve belirtilen sırayla uygulanır. SortSpec.dimensionIndex özelliği, sıralamanın uygulanması gereken sütun dizinini belirtir.
Aşağıdaki kod örneğinde bir sıralama belirtimi gösterilmektedir:
[
{
"dimensionIndex": 3,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 6,
"sortOrder": "ASCENDING"
}
]
Bu spesifikasyon, örnek satış verilerine uygulandığında önce "Miktar"a göre sıralama yapar. Ardından, 2 satırın miktarı aynıysa "Gönderim Tarihi"ne göre sıralama yapar.
| A | B | C | D | E | F | G | |
| 1 | Öğe Kategorisi | Model Numarası | Maliyet | Miktar | Bölge | Satış görevlisi | Kargo Tarihi |
| 2 | Kapı | D-01X | 15 TL | 2 | Güney | Amir | 15.03.2016 |
| 3 | Motor | ENG-0161 | $330,00 | 2 | Kuzey | Jessie | 02.07.2016 |
| 4 | Tekerlek | W-24 | 20,50 ABD doları | 4 | Batı | Beth | 01.03.2016 |
| 5 | Panel | P-034 | 6,00 ABD doları | 4 | Kuzey | Devyn | 15.03.2016 |
| 6 | Panel | P-052 | 11,50 ABD doları | 7 | Doğu | Erik | 16.05.2016 |
| 7 | Çerçeve | FR-0B1 | 34,00 ABD doları | 8 | Doğu | Hannah | 12.03.2016 |
| 8 | Tekerlek | W-24 | 20,50 ABD doları | 11 | Güney | Sheldon | 30.04.2016 |
Filtre ölçütleri
FilterCriteria yöntemi, temel filtrede veya filtre görünümünde hangi e-tablo verilerinin gösterileceğini ya da gizleneceğini belirler. Her ölçüt, belirli bir sütundaki değerlere bağlıdır. Filtre ölçütlerini, anahtarların sütun dizinleri ve değerlerin ölçütler olduğu bir harita olarak sağlarsınız.
Boole condition kullanılarak belirtilen ölçütler için değerlerin gösterilmesi amacıyla koşul True olmalıdır. Koşul, hiddenValues değerini geçersiz kılmaz. Bir değer hiddenValues altında listeleniyorsa değerle ilgili tüm eşleşmeler gizlenmeye devam eder.
Aşağıdaki kod örneğinde bir filtre ölçütü haritası gösterilmektedir:
{
0: {
'hiddenValues': ['Panel']
},
6: {
'condition': {
'type': 'DATE_BEFORE',
'values': {
'userEnteredValue': '4/30/2016'
}
}
}
}
Örnek satış verilerine uygulandığında bu ölçüt yalnızca "Öğe Kategorisi"nin "Panel" olmadığı ve "Kargo Tarihi"nin 30 Nisan 2016'dan önce olduğu satırları gösterir.
| A | B | C | D | E | F | G | |
| 1 | Öğe Kategorisi | Model Numarası | Maliyet | Miktar | Bölge | Satış görevlisi | Kargo Tarihi |
| 2 | Tekerlek | W-24 | 20,50 ABD doları | 4 | Batı | Beth | 01.03.2016 |
| 3 | Kapı | D-01X | 15 TL | 2 | Güney | Amir | 15.03.2016 |
| 4 | Çerçeve | FR-0B1 | 34,00 ABD doları | 8 | Doğu | Hannah | 12.03.2016 |
Örnek
Aşağıdaki örnek kodda, filtre görünümünün nasıl oluşturulacağı, nasıl kopyalanacağı ve ardından yukarıdaki örnek satış verileri kullanılarak kopyalanan sürümün nasıl güncelleneceği gösterilmektedir.