Excel'de Veri Filtrelemeyi Öğrenin: Dinamik İşlevlerden Klasik Araçlara

Kerem Aydın·9 Temmuz 2026·⏱4 dk

FİLTRE işlevi, tek bir formülle verilere göre listeleri anında görüntülemenize olanak tanır ve kaynak tablo değiştiğinde otomatik olarak güncellenir. Eski bir Excel sürümünüz varsa veya sonucu statik olarak kopyalamanız gerekiyorsa, "Veri" menüsü üzerinden "Gelişmiş Filtre" aracını kullanın. Aşağıda, etkili çalışma için bu yöntemlerin söz dizimini, karmaşık koşullar oluşturma mantığını ve temel farklılıklarını ayrıntılı olarak inceleyeceğiz.

FİLTRE İşlevi: Özellikler ve Söz Dizimi

FİLTRE işlevi (İngilizce FILTER), Microsoft 365 ve Excel 2021+ sürümlerinde mevcuttur. Dinamik bir dizi döndürür: kaynak veriler değişirse, makroları veya filtreleri yeniden çalıştırmaya gerek kalmadan sonuç otomatik olarak yeniden hesaplanır.

Temel söz dizimi: =FİLTRE(dizi; dahil_etme; [boşsa])

  • dizi: Verilerin seçileceği hücre aralığı veya tablo.
  • dahil_etme: Hangi satırların tutulacağını belirleyen mantıksal koşul (doğru/yanlış).
  • boşsa: (isteğe bağlı) Hiçbir şey bulunamazsa görünecek metin veya değer (#YOK hatasına karşı koruma).

Formüllerin kararlılığı için kaynak aralığı her zaman "Akıllı Tablo"ya (Ctrl+T) dönüştürün. Böylece yeni satırlar eklendiğinde, formül referansları değiştirmeden bunları otomatik olarak dikkate alacaktır.

Karmaşık Koşullar Oluşturma

İşlevin asıl gücü, "VE" ve "VEYA" kelimeleri yerine matematiksel operatörler kullanarak kriterleri birleştirme yeteneğidir:

  1. Mantıksal VE (kesişim): Çarpma işaretini * kullanın. Satır yalnızca tüm koşullar sağlandığında seçilir.

    • Örnek: "Kuzey" bölgesindeki satışlar VE tutar 1000'den büyük.
    • =FİLTRE(A2:C100; (B2:B100="Kuzey") * (C2:C100>100); "Veri yok")
  2. Mantıksal VEYA (birleşim): Artı işaretini + kullanın. Satır, en az bir koşul sağlanıyorsa seçilir.

    • Örnek: Durum "Ödendi" VEYA durum "İşlemde".
    • =FİLTRE(A2:D100; (D2:D100="Ödendi") + (D2:D100="İşlemde"); "Boş")
  3. Kısmi eşleşme arama: ARA veya BUL işlevleriyle birlikte kullanın.

    • Örnek: "mosk" kelimesini içeren tüm şehirleri bulun (Moskova, Moskova Oblastı).
    • =FİLTRE(A2:B100; ISNUMBER(ARA("mosk"; B2:B100)); "Bulunamadı") (Not: ARA işlevi metni bulursa bir sayı, bulamazsa hata döndürür. ISNUMBER bunu DOĞRU/YANLIŞ'a dönüştürür).

Pratik Kullanım Senaryoları

Saniyeler içinde çözülen gerçek görevlere bakalım:

GörevFormülAçıklama
Tarihe göre seçim=FİLTRE(Tablo; Tablo[Tarih]>=TARİH(2024;1;1))Yıl başından itibaren tüm kayıtları seçme.
Benzersiz değerler=TEK( FİLTRE(Tablo[Satici]; Tablo[Satis]>0))Satışı olan temsilcilerin listesi (tekrarsız).
Filtre içinde sıralama=ÇOKLU.SIRALA(FİLTRE(...); 2; -1)Verileri filtrelerken aynı anda ikinci sütuna göre azalan sırada sıralama.
Belirli sütunları seçme=SÜTUNSEÇ(FİLTRE(...); {1\3})Filtrelenmiş diziden yalnızca 1. ve 3. sütunları döndürme.

Gelişmiş Filtre: Ne Zaman Gereklidir?

"Gelişmiş Filtre" aracı (Veri sekmesi → Sırala ve Filtrele → Gelişmiş), eski Excel sürümlerinde veya formülsüz statik bir veri kopyası elde etmeniz gerektiğinde vazgeçilmezdir.

Çalışma Algoritması:

  1. Koşul aralığını hazırlayın. Yan tarafta küçük bir tablo oluşturun. İlk satırda ana tablodakiyle tamamen aynı başlıklar olmalıdır. Altlarına kriterleri yazın.
    • Aynı satırdaki koşullar VE olarak çalışır.
    • Farklı satırlardaki koşullar VEYA olarak çalışır.
  2. Aracı başlatın. Veri sekmesine gidin → Gelişmiş.
  3. Parametreleri ayarlayın:
    • Orijinali korumak istiyorsanız "Sonucu başka bir yere kopyala"yı seçin.
    • "Liste Aralığı"nı belirtin (veritabanınız).
    • "Koşul Aralığı"nı belirtin (kriterlerle hazırladığınız küçük tablo).
    • "Kopyalama Başlangıcı"nı belirtin (çıktı için sol üst hücre).

Koşul aralığındaki başlıklar, veritabanı başlıklarıyla karakter karakter eşleşmelidir. Sütun adındaki fazladan bir boşluk, filtrenin koşulu görmezden gelmesine neden olur.

Yöntemlerin Karşılaştırılması: Hangisini Seçmeli?

ÖzellikFİLTRE İşleviGelişmiş Filtre
DinamizmVeriler değiştiğinde otomatik güncellenirManuel olarak tekrar çalıştırma gerektirir
Excel SürümüYalnızca 365, 2021 ve yenileriTüm sürümlerde çalışır (2007–2024)
EsneklikDiğer formüllere kolayca entegre edilirİzole çalışır, değerler verir
Koşul KarmaşıklığıFormül söz dizimi bilgisi gerektirirGörsel olarak anlaşılır koşul tablosu
PerformansÇok büyük dizilerde (100k+ satır) yavaşlayabilirBüyük statik dışa aktarmalarda daha hızlı çalışır

Sık Karşılaşılan Hatalar ve Çözümleri

  1. #YOK (#N/A) Hatası: FİLTRE işlevi uygun hiçbir satır bulamazsa ortaya çıkar.
    • Çözüm: Her zaman işlevin üçüncü bağımsız değişkenini doldurun: =FİLTRE(...; "..."; "Hiçbir şey bulunamadı").
  2. Dizi Boyutlarının Uyuşmaması: Koşuldaki aralıklar ile dizinin kendisi farklı sayıda satıra sahipse #DEĞER! (#VALUE!) hatası oluşur.
    • Çözüm: Referansların aynı satırlarda başlayıp bittiğinden emin olun (örneğin, her yerde 2'den 100'e kadar).
  3. Gelişmiş Filtrede Koşulların Görmezden Gelilmesi: Genellikle başlık ve koşul arasındaki boş satırlardan veya başlıkların yazım farklılıklarından kaynaklanır.
    • Çözüm: Yazım hatalarından kaçınmak için başlığı ana tablodan kopyalayın ve koşul aralığına yapıştırın (Ctrl+C, Ctrl+V).
  4. Karıştırılan VE/VEYA Operatörleri: Kullanıcılar genellikle * gereken yerde + koyarlar.
    • Çözüm: Mnemoniği hatırlayın: Çarpma (*) aramayı daraltır (az satır kalır) — bu VE'dir. Toplama (+) aramayı genişletir (daha fazla satır olur) — bu VEYA'dır.

SSS

FİLTRE işlevi pivot tabloda kullanılabilir mi? Hayır, dizi formülünü doğrudan pivot tablonun içine yerleştiremezsiniz. Ancak, FİLTRE işleviyle kaynak verileri filtreleyebilir ve ardından bu yeni dinamik aralığa dayalı olarak pivot tablo oluşturabilirsiniz.

Veriler hücre rengine göre nasıl filtrelenir? Ne FİLTRE işlevi ne de standart gelişmiş filtre, hücre rengini kriter olarak kullanmayı bilmez. Bunun için makro (VBA) kullanımı veya renge göre ön sıralama ve ardından manuel seçim gerekecektir.

FİLTRE işlevinin sonucu diğer verilerin üzerine "taşarsa" ne yapmalı? Dinamik dizi, formülün sağında ve altında boş hücreler gerektirir. Orada veri varsa, #TAŞMA! (#SPILL!) hatası oluşur. Çözüm: Sonucun genişleyeceği alanı temizleyin veya formülü boş bir alana taşıyın.