Excel’de uzun formüller yazıp sonra her hücreye tek tek kopyalamakla uğraştığın günleri hatırlıyor musun? Dinamik diziler tam olarak bu sorunu ortadan kaldırmak için geliştirildi. Tek bir formül yaz, sonuç otomatik olarak birden fazla hücreye yayılsın. Dinamik diziler, Excel’in çalışma mantığını kökten değiştiren ve özellikle FİLTRE, BENZERSİZ, SIRALA gibi fonksiyonlarla birleştiğinde inanılmaz güçlü hale gelen bir özellik.
Bu yazıda dinamik dizilerin ne olduğunu, nasıl çalıştığını ve en çok kullanılan üç fonksiyonu (FİLTRE, BENZERSİZ, SIRALA) detaylıca inceleyeceğiz. Pratik örneklerle bu fonksiyonları kendi çalışmalarında nasıl uygulayabileceğini de göreceksin.
Kısa Tanım: Dinamik Diziler Ne Demek?
Dinamikdizi, tek bir hücreye girilen formülün sonucunun otomatik olarak komşu hücrelere “taşmasını” (spill) sağlayan Excel özelliğidir. Eski Excel versiyonlarında bir formülün birden fazla sonuç döndürmesi için CTRL+SHIFT+ENTER kombinasyonuyla dizi formülüoluşturman gerekiyordu. Artık buna gerek yok.
Kısaca: Formülü bir hücreye yaz, Excel gerisini halleder. Sonuçlar kaç satır veya sütun gerektiriyorsa o kadar alana otomatik yayılır. Bu yayılma alanına “spill range” (taşma aralığı) denir.
Hangi Excel Sürümlerinde Kullanılabilir?
Dinamik diziler şu sürümlerde destekleniyor:
- Microsoft365 (Office 365) aboneliği
- Excel 2021
- Web için Excel
Excel 2019 veya daha eski sürümlerde bu özellik bulunmuyor. Eğer dosyanı farklı sürümlerdeki kullanıcılarla paylaşacaksan buuyumluluk detayını göz önünde bulundurmalısın.
Dinamik Dizilerin Temel Mantığı ve Avantajları
Klasik Excel yaklaşımında her hücreye ayrı formül yazardın. Örneğin 100 satırlık bir veri setini filtrelemek istesen, ya yardımcı sütunlar oluşturur ya da karmaşık INDEX-MATCH kombinasyonları kurardın. Dinamik dizilerle bu süreç çok daha basit.
Taşma (Spill) Nasıl Çalışır?

Bir dinamik dizi formülü girdiğinde Excel şu adımları izler:
- Formülü değerlendirir ve kaç sonuç üreteceğini hesaplar
- Sonuçların sığacağı alanın boş olup olmadığını kontrol eder
- Alan boşsa sonuçları otomatik olarak yayar
- Kaynak veri değiştiğinde sonuçlar da otomatik güncellenir
Eğer taşma alanında başka bir veri varsa #TAŞMA! (#SPILL!) hatası alırsın. Bu durumda engelleyen hücreleri temizlemen yeterli.
Nerede Kullanılır?
Dinamik diziler özellikle şu senaryolarda işe yarar:
- Büyük veri setlerinden belirli kriterlere göre veri çekmek
- Tekrarlayan değerleri otomatik ayıklamak
- Verileri anlık olarak sıralamak
- Raporlama ve dashboard oluşturmak
- Veri doğrulama listeleri hazırlamak
Basit örnek: Diyelim ki A1:A10 aralığında sayılar var ve bunların karesini almak istiyorsun.Eski yöntemde formülü yazıp 10 hücreye kopyalardın. Dinamik diziyle sadece =A1:A10^2 yazarsın, 10 sonuç otomatik olarak aşağı doğru yayılır.
FİLTRE Fonksiyonu: Koşullu Veri Çekmenin En Kolay Yolu
FİLTRE (İngilizce versiyonda FILTER), belirli kriterlere uyan verileri otomatik olarak listeleyen dinamik dizi fonksiyonudur. Gelişmiş Filtre veya VBA makroları yazmaya gerek kalmadan, formülle canlı filtreleme yapabilirsin.
Söz Dizimi
=FİLTRE(dizi; dahil_et; [eğer_boş])
- dizi: Filtrelenecek veri aralığı
- dahil_et: Filtreleme koşulu (DOĞRU/YANLIŞ döndüren mantıksal test)
- eğer_boş: Sonuç bulunamazsa gösterilecek değer (isteğe bağlı)
Pratik Örnek: Satış Verisi Filtreleme
A sütunundaürün adları, B sütununda satış bölgeleri, C sütununda satış tutarları olsun. Sadece “İstanbul” bölgesine ait kayıtları çekmek için:
=FİLTRE(A2:C100; B2:B100=”İstanbul”; “Kayıt bulunamadı”)
Bu formül İstanbul’a ait tüm satırları otomatik olarak listeler. Veri eklendikçe veya bölge bilgisi değiştikçe sonuçlar anlık güncellenir.
Çoklu Koşul Kullanımı
Birden fazla koşulu birleştirmek için çarpma (*) veya toplama (+) operatörlerini kullanabilirsin:
- VE mantığı için: (koşul1)*(koşul2)
- VEYA mantığı için: (koşul1)+(koşul2)
Örneğin İstanbul bölgesi VE 10.000 TL üzeri satışları çekmek için: =FİLTRE(A2:C100; (B2:B100=”İstanbul”)*(C2:C100>10000))
Pro İpucu: Koşul değerini bir hücreye yazıp formülde o hücreye referans verirsen, kullanıcıdostu dinamik bir filtre paneli oluşturabilirsin. Hücreyi değiştirdikçe sonuçlar anında değişir.
BENZERSİZ Fonksiyonu: Tekil Değerleri Anında Çıkar

BENZERSİZ (UNIQUE), bir listedeki tekrarlayan değerleri temizleyerek benzersiz kayıtları döndürür. Veri doğrulama listeleri, özet tablolar veya kategori listeleri oluştururken oldukça kullanışlı.
Söz Dizimi
=BENZERSİZ(dizi; [sütuna_göre]; [tam_bir_kez])
- dizi: Benzersiz değerlerin çıkarılacağı aralık
- sütuna_göre: DOĞRU ise sütunları karşılaştırır, YANLIŞ veya boş ise satırları (varsayılan)
- tam_bir_kez: DOĞRU ise sadece bir kez geçen değerleri döndürür
Pratik Örnek: Müşteri Listesi
Satış tablonda aynı müşteri birden fazla kez geçiyorsa ve benzersiz müşteri listesi oluşturmak istiyorsan:
=BENZERSİZ(A2:A500)
Bu kadar basit. Sonuç olarak her müşteri adı sadece bir kez listelenir. Liste otomatik olarak büyür veya küçülür.
Sadece Bir Kez Geçen Değerler
Bazen tekrar eden değerleri değil, tam tersine sadece bir kez geçen “özel” kayıtları bulmak istersin. Bunun için üçüncü parametreyi DOĞRU yap:
=BENZERSİZ(A2:A500;;DOĞRU)
Senaryo: Bir etkinliğe kayıt listesinde aynı kişi birden fazla kez kayıt olmuş olabilir. Sadece tek kayıt yapanları bulmak için bu yöntemi kullanabilirsin.
SIRALA Fonksiyonu: Dinamik ve Canlı Sıralama
SIRALA (SORT), verileri belirttiğin kritere göre artan veya azalan şekilde sıralar. Orijinal verinedokunmadan, farklı bir alanda sıralı görünüm eldeedersin.
Söz Dizimi
=SIRALA(dizi; [sıralama_dizini]; [sıralama_düzeni]; [sütuna_göre])
- dizi: Sıralanacak veri aralığı
- sıralama_dizini: Hangi sütuna göre sıralama yapılacağı (varsayılan 1)
- sıralama_düzeni: 1 = artan (A-Z), -1 = azalan (Z-A)
- sütuna_göre: DOĞRU ise sütunları sıralar
Pratik Örnek: Satışları Büyükten Küçüğe Sırala
A sütununda ürün adı, B sütununda satış miktarı varsa ve satışa göre azalan sıralama istiyorsan:
=SIRALA(A2:B100; 2; -1)
Bu formül tüm tabloyu satış sütununa göre büyükten küçüğe sıralar. Veriler değiştikçe sıralama da otomatik güncellenir.
Çoklu Sütuna Göre Sıralama

Birden fazla kritere göre sıralama için dizi sabitlerini kullanabilirsin:
=SIRALA(A2:C100; {2;3}; {1;-1})
Bu formül önce 2. sütuna göre artan, sonra 3. sütuna göre azalan sıralar. Genelde “önce kategoriye, sonra tarihe göre sırala” gibi senaryolarda işe yarar.
Fonksiyonları Birlikte Kullanmak: Güçlü Kombinasyonlar
Dinamik dizi fonksiyonlarının asıl gücü birlikte kullanıldığında ortaya çıkar. Bir fonksiyonun çıktısını diğerine girdi olarak verebilirsin.
Örnek: Filtrele, Benzersiz Yap, Sırala
Diyelim ki sadece belirli bir bölgedeki müşterilerin benzersiz listesini alfabetik sıralı istiyorsun:
=SIRALA(BENZERSİZ(FİLTRE(A2:A500; B2:B500=”Ankara”)))
Bu iç içe formül şu işlemleri sırasıyla yapar:
- Ankara bölgesine ait müşterileri filtreler
- Tekrar edenleri çıkarır
- Alfabetik olarak sıralar
Kilit Çıkarım: Bu üç fonksiyonu kombine ederek eskiden onlarca satır VBA kodu veya birden fazla yardımcı sütun gerektiren işlemleri tek bir formülle yapabilirsin.
Benzer Kavramlarla Farkı
Dinamik dizileri klasik dizi formülleriyle karıştırmamak gerekir:
- Klasik dizi formülleri: CTRL+SHIFT+ENTER gerektirir, sonuç aralığını önceden seçmelisin
- Dinamik diziler: Normal ENTER ile çalışır, sonuç alanı otomatik belirlenir
- Tablo (Table) yapısı: Yapısal referanslar sunar ama formül mantığı farklıdır
Sıkça Sorulan Sorular
Dinamik dizi formüllerinieski Excel sürümlerinde açabilir miyim?
Dosyayı açabilirsin ancak formüller çalışmaz.Eski sürümlerde #AD? veya #DEĞER! hatası görürsün.Uyumluluk gerekiyorsa klasik formül alternatiflerini kullanman veya sonuçları değer olarak yapıştırman gerekir.
#TAŞMA! hatası nedenoluşur ve nasıl çözülür?
Bu hata, dinamik dizinin yayılmak istediği alanda başka veri olduğunda ortaya çıkar. Çözüm için taşma alanındaki hücreleri temizle veya formülü daha boş bir alana taşı. Hata hücresine tıkladığında Excel engelleyen hücreleri gösterir.
FİLTRE fonksiyonu sonuç bulamazsa ne olur?

Varsayılan olarak #HESAP! hatası döner. Bunu önlemek için üçüncü parametreye “Sonuç yok” veya boş metin (“”) gibi bir değer yazabilirsin. Böylece kullanıcı dostu bir mesaj görüntülenir.
Dinamik dizileri PivotTable ile birlikte kullanabilir miyim?
Evet, dinamik dizi sonuçlarını PivotTable kaynağı olarak kullanabilirsin. Ancak taşma aralığının boyutu değişeceği için kaynak aralığını tablo (Table) yapısına çevirmek veya dinamik adlandırılmış aralık kullanmak daha pratik olur.
Bu fonksiyonların Türkçe ve İngilizce isimleri nedir?
FİLTRE = FILTER, BENZERSİZ = UNIQUE, SIRALA = SORT. Excel’indil ayarına göre fonksiyon isimleri değişir. Dosyayı farklı dil ayarlı bir bilgisayarda açtığında Excel otomatik çeviri yapar.
Sonuç: Dinamik Dizilerle Excel Deneyimini Yükselt
Dinamik diziler, Excel’de veri işleme mantığını temelden değiştiren güçlü bir özellik. FİLTRE ile koşullu veri çekebilir, BENZERSİZ ile tekrarları temizleyebilir, SIRALA ile anlık sıralama yapabilirsin. Üstelik bu fonksiyonları birleştirerek karmaşık işlemleri tek formülle halledebilirsin.
Eğer hâlâ Excel 2019 veya dahaeski sürüm kullanıyorsan, Microsoft365’e geçmeyi değerlendirebilirsin. Dinamik diziler özellikle büyük veri setleriyle çalışanlar, raporlama yapanlar ve dashboard hazırlayanlar için ciddi zaman tasarrufu sağlıyor. Küçük projelerle başlayarak bu fonksiyonları günlük iş akışına dahil ettiğinde farkı hızla göreceksin.












Cevap ver