Excel'de dinamik bir "Üst 10" veya "Üst N" listesi nasıl oluşturulur?
Birçok proje ve iş sürecinde, bireyleri, kuruluşları, ürünleri veya diğer varlıkları performanslarına ya da sayısal değerlerine göre sıralamak sıklıkla gereklidir. “Üst liste”, en yüksek performansı gösteren kayıtları öne çıkarmak için kullanılır; örneğin, notlarına göre en başarılı öğrenciler, en iyi satış temsilcileri veya en yüksek gelire sahip departmanlar gibi. Örneğin, aşağıdaki ekran görüntüsünde gösterildiği gibi, ödüllerin dağıtılması, analiz yapılması veya eğitim sonuçlarının takip edilmesi amacıyla öğrenci notlarından oluşan bir tablonuz olabilir ve bu tablodan dinamik olarak en yüksek 10 puanı alan öğrencileri otomatik olarak çıkarabilirsiniz. Excel’de dinamik bir “Üst 10” veya “Üst N” listesi oluşturmak, verileriniz güncellendiğinde sonuçların da anında yenilenmesini sağlar; böylece manuel sıralama sürecinden kaynaklanan zaman kaybı ve hatalar en aza indirilir. Bu kılavuz, çeşitli veri analizi ihtiyaçlarınızı verimli şekilde karşılamak üzere dinamik bir “Üst 10” veya “Üst N” listesi oluşturmanıza yardımcı olacak pratik çözümleri—formüller, PivotTable ve VBA makroları—tanıtmaktadır.

Excel'de dinamik bir üst 10 listesi oluşturun
- Dinamik bir üst 10 listesi oluşturmak için formüller
- Kriterli dinamik bir üst 10 listesi oluşturmak için formüller
Office 365 içinde dinamik bir üst 10 listesi oluşturun
- Dinamik bir üst 10 listesi oluşturmak için formül
- Kriterli dinamik bir üst 10 listesi oluşturmak için formül
Bir PivotTable kullanarak dinamik bir üst 10 listesi oluşturun
Excel'de dinamik bir üst 10 listesi oluşturun
Excel 2019 ve önceki sürümlerde, dinamik bir üst 10 (veya üst N) listesi oluşturmak, hem en yüksek değerleri hem de bunlarla ilişkili adları veya kimlikleri aynı anda çıkarmak için formüllerin birleştirilmesini gerektirir. Bu çözüm yaygın olarak kullanılır ve verileriniz değiştiğinde listenin otomatik olarak güncellenmesini istediğiniz durumlar için uygundur. Aşağıdaki işlemler, klasik Excel formüllerini kullanarak bunun nasıl elde edileceğini açıklar. Bu formüller esneklik sağlar ve özel Excel eklentileri gerektirmez; ancak kurulum süreci, bazı modern dinamik dizi işlevlerine kıyasla biraz daha karmaşıktır.
Dinamik bir üst 10 listesi oluşturmak için formüller
1. Başlamak için, değer aralığınızdan en yüksek 10 değeri çıkarın. Bunun için aşağıdaki formülü boş bir hücreye (örneğin G2 hücresine) girin. Formülü girdikten sonra, doldurma tutamacını aşağı doğru sürükleyerek dinamik üst 10 değer listenizi oluşturun. Ekran görüntüsüne bakın:

2. Ardından, bu en yüksek değerlere karşılık gelen adları (veya kimlikleri) görüntülemek için F2 hücresine aşağıdaki formülü girin. Bu bir dizi formülüdür; bu nedenle girdikten sonra onaylamak için Ctrl + Shift + Enter tuşlarına basın. Bu formül, az önce belirlediğiniz en yüksek değerlere karşılık gelen adları bulur:
-A2:A20isimlerin alınacağı aralıktır;
-B2:B20puan veya değer aralığıdır;
-G2yukarıdaki formülden gelen üst değerdir;
-B1değer listesinin başlığıdır ve SATIR hesaplamalarında ofset olarak kullanılır.
Bu formül, en yüksek değerleri isimleriyle dinamik olarak ilişkilendirir. Değer aralığınızda yinelenenler varsa, EĞERSAY işlevi, her eşleşen ismin puanıyla birlikte yalnızca bir kez görünmesini sağlar.

3. İlk sonucu aldıktan sonra, F2 hücresindeki formülü seçin ve formülü ihtiyaç duyduğunuz kadar çok satıra kopyalamak için doldurma tutamacını aşağı doğru sürükleyin. Böylece sonuçlarınız, bu puanlarla eşleşen tüm üst kayıtların adlarını dinamik olarak gösterecek şekilde otomatik olarak genişler. Ekran görüntüsüne bakın:


Excel'in sihrini KUTOOLS AI ile keşfedin
- Akıllı Yürütme: Hücre işlemlerini gerçekleştirin, verileri analiz edin ve hepsini basit komutlarla oluşturulan grafiklerle görselleştirin.
- Özel formüller: İş akışlarınızı kolaylaştırmak için özel formüller oluşturun.
- VBA Kodlama: VBA kodlarını zahmetsizce yazın ve uygulayın.
- Formül Yorumlama: Karmaşık formülleri bir çırpıda anlayın.
- Metin Çevirisi: Elektronik tablolarınızdaki dil bariyerlerini aşın.
Kriterli dinamik bir üst 10 listesi oluşturmak için formüller
Bazı analiz görevlerinde, yalnızca belirli kriterleri karşılayan kayıtları içeren bir üst liste gerekebilir—örneğin, en yüksek sonuçları belirli bir grup, ekip veya kategoriyle sınırlandırmak gibi. Örneğin, birden fazla sınıfın notlarını içeren bir veri sayfasında yalnızca “1. Sınıf” için en yüksek 10 puanı belirlemek isteyebilirsiniz. Bu senaryoda formüllerin nasıl kullanılacağını aşağıda açıklıyoruz:

1. Belirlediğiniz kritere (örneğin, "1 Sınıfı") uyan en yüksek 10 değeri veri kümesinden çıkarmaya başlayın. Hedef hücreye (örneğin J2 hücresine) aşağıdaki formülü girin:
2. Formülü girdikten sonra, dizi formülü olarak onaylamak için Ctrl + Shift + Enter tuşlarına basın, ardından diğer hücreleri doldurmak için doldurma tutamacını aşağı doğru sürükleyin. Formül, seçtiğiniz koşula (örneğin, "1 Sınıfı"ndaki tüm puanlar) uyan en yüksek 10 değeri döndürecektir.

3. Kriterlerinize göre bu üst değerlere karşılık gelen adları listelemek için aşağıdaki formülü I2 hücresine kopyalayın ve yapıştırın, ardından bir dizi formülü olarak uygulamak üzere Ctrl + Shift + Enter tuşlarına basın. Sonrasında, tam Ad Listesi’ni oluşturmak için formülü gerektiği kadar aşağı doğru doldurun.

Formüllerdeki aralıkların gerçek veri düzeninize uygun şekilde ayarlandığından emin olun. Unutmayın, büyük aralıklarda dizi formüllerinin kullanılması performansı yavaşlatabilir. Üst 10 listenizde yinelenen değerler varsa, formül bu tekrarlanan puanları doğru şekilde işler ve notları eşit olan birden fazla öğrencinin adını gösterir.
Office 365’te dinamik bir üst 10 listesi oluşturun
Excel’in önceki sürümleri, dizi formüllerinde birkaç işlevi bir arada kullanmayı zorunlu kılarken; Office 365 (ve Excel 2021), INDEX, SORT, SEQUENCE ve FILTER gibi dinamik dizi işlevlerini sunarak iş akışınızı büyük ölçüde basitleştirir. Bu işlevler, dinamik üst 10 listeleri oluşturmayı kolaylaştırır, hataları en aza indirir ve sıklıkla büyüyen ya da değişen tablolar için özellikle değerlidir. Sürekli güncellenen verilerle çalışıyorsanız, bu işlevler analiz sürecinizi hızlandırır ve daha çabuk iş kararları almanızı sağlar.
Dinamik bir üst 10 listesi oluşturmak için formül
Office 365 kullanarak dinamik bir üst 10 listesi çıkarmak ve görüntülemek için aşağıdaki formülü istediğiniz çıkış hücresine girin. Yapmanız gereken tek şey, ihtiyaçlarınıza göre aralıkları ve sayıları ayarlamaktır; formül, verileriniz her değiştiğinde en güncel üst 10 sonuçlarını otomatik olarak gösterir.
Yalnızca Enter tuşuna basın. En iyi 10 listesi anında karşınıza çıkar ve dinamik olarak güncellenir; böylece eklenen veriler ya da değişen puanlar sıralamada hemen yansıtılır.

SIRALA işlevi:
=SORT(array, [sort_index], [sort_order], [by_col])
- dizi: Sıralamak istediğiniz aralık.
- [sort_index]: Sıralanacak sütunun numarası. Tipik bir not tablosunda bu genellikle ikinci sütundur.
- [sort_order]: Artan sıralama için 1, azalan sıralama içinse -1 kullanın. En yüksek puanları öne çıkarmak istiyorsanız -1’i tercih edin.
- [by_col]: Sütunlara göre (DOĞRU) mı yoksa satırlara göre (YANLIŞ veya boş bırakılmış) mı sıralanacağını belirtir.
Örnek: SIRALA(A2:B20;2; -1) formülü, A2:B20 aralığını ikinci sütuna göre azalan sırayla sıralar.
DİZİ işlevi:
=SEQUENCE(rows, [columns], [start], [step])
- satır: Döndürülecek satır sayısı; örneğin, ilk 10 listesi için 10.
- [columns]: (İsteğe bağlı) Döndürülecek sütun sayısı.
- [start]: (İsteğe bağlı) Başlangıç değeri.
- [step]: (İsteğe bağlı) Artış miktarı.
DİZİ(10), 1 ile 10 arasındaki sayıları oluşturarak ENDEKS işlevinin en üstteki 10 sıralı sonucu seçmesini sağlar.
Bunları birleştirerek, =INDEX(SORT(A2:B20,2,-1),SEQUENCE(10),{1,2}) formülü size dinamik ve iki sütunlu bir üst 10 listesi oluşturur.
Kriterlerle birlikte dinamik bir üst 10 listesi oluşturmak için formül
Belirli bir grup için — örneğin "Sınıf 1" — üst 10 değeri çıkarmanız gerekiyorsa, bu gelişmiş Office 365 işlevleri yalnızca belirttiğiniz kriterleri karşılayan satırları içeren bir üst N listesi oluşturmanıza olanak tanır. Aşağıdaki formülü istediğiniz yere yerleştirin ve aralıkları ile kriter hücresini ihtiyaçlarınıza göre ayarlayın:
Formülü girdikten sonra yalnızca Enter tuşuna basın. Belirtilen kritere göre filtrelenmiş ve sıralanmış ilk 10 listesi anında görüntülenir; verilerinizi veya kriterinizi değiştirdiğinizde liste otomatik olarak güncellenir.

FİLTRE işlevi:
=FILTER(array, include, [if_empty])
- dizi: Filtrelenecek hücre aralığı.
- include: Dahil etme koşulu (örneğin, belirli bir sınıfa eşit olma).
- [if_empty]: (İsteğe bağlı) Kriterleri karşılayan bir sonuç bulunamazsa gösterilecek içerik.
=FILTER(A2:C25,B2:B25=F2) formülü, yalnızca B sütunundaki değerler F2 hücresindeki değere eşleşen satırları döndürür.
Bir PivotTable ile dinamik bir üst 10 listesi oluşturun
PivotTable: Üst N sonuçlarını etkileşimli olarak otomatik görüntüleyin
Dinamik bir üst N listesi oluşturmanın alternatif bir yolu, Excel’in PivotTable özelliğini kullanmaktır. Bu yöntem, özellikle büyük veri kümeleriyle çalışırken, etkileşimli analiz yapmak istediğinizde (örneğin üst öğe sayısını anında değiştirmek veya filtre uygulamak) ya da karmaşık formüllerden kaçınmak istediğinizde idealdir. PivotTable kullanıcı dostudur ve veriler güncellendiğinde otomatik olarak yenilenir—bu da başkalarıyla paylaşılan panolar veya raporlar için mükemmel bir seçim haline getirir.
Bir PivotTable kullanarak dinamik bir üst N listesi oluşturmak için:
- Veri tablonuzun herhangi bir yerine tıklayın, ardından şuraya gidin: Ekle > PivotTablo.
- PivotTablo iletişim kutusunda PivotTable'yi nereye yerleştirmek istediğinizi seçin ve Tamam'a tıklayın.
- "Ad" (veya benzeri bir tanımlayıcı) alanınızı Satırlar alanına sürükleyin.
- "Puan" (veya değer sütunu) alanınızı Değerler alanına sürükleyin. Genellikle "Toplamı" veya "Sayısı" şeklinde varsayılan olarak gelir—üst listeler için genellikle "Toplam" veya "En Büyük" tercih edersiniz. Gerekirse sağ tıklayıp Değeri Özetle seçeneğini kullanarak değer alanı hesaplamasını değiştirin.
- "Puan" sütununu azalan sıraya göre sıralamak için bir değere sağ tıklayın ve Sırala > En büyükten en küçüğe Sırala seçeneğini seçin.
- Üst N sonucuyla sınırlamak için Satır Etiketleri'ndeki açılır oku tıklayın, Değer Filtreleri > Üst 10… seçeneğini seçin, sayıyı (örneğin Üst 10) ve filtreleme yapılacak alanı ayarlayın, ardından Tamam'a tıklayın.
PivotTable artık dinamik olarak üst 10 değerlerinizi (veya belirttiğiniz herhangi bir N değerini) gösteriyor. Üst N değerini değiştirmek için filtre ayarlarına dönmeniz yeterli. Verileriniz değişirse, sıralamaları anında güncellemek için PivotTable’ı yenileyin.
Bu yaklaşımın avantajları arasında hızlı kurulum, kolay sıralama ve etkileşimli ayarlama bulunur. Ancak PivotTable, ilgili satırları diğer sütunlardan otomatik olarak ekleyemez; bunun için öncelikle Satır veya Değerler alanına dahil edilmelidir. Gelişmiş kullanıcılar ise raporları, gruplama yaparak, dilimleyiciler oluşturarak veya Üst N filtresini panolara entegre ederek daha da özelleştirebilir.
VBA kullanarak dinamik bir üst 10 listesi oluşturun
VBA Makrosu: Üst N listesini otomatik olarak oluşturun ve yenileyin
VBA makrosu kullanmak, dinamik bir üst N listesi çıkarımını ve yenilenmesini otomatikleştirmenin gerektiği, kapsamlı ya da sık güncellenen verilerle çalışan kullanıcılar için idealdir. Makrolar, tekrarlayan görevleri en aza indirerek tutarlılığı garantileme açısından mükemmeldir. Her çalıştırıldığında verilerinizi sıralayıp yalnızca ilk N satırı belirli bir konuma kopyalayan bir rutin oluşturabilirsiniz.
Dinamik bir üst N listesi oluşturmak için bir VBA makrosu kullanmak üzere aşağıdaki adımları izleyin:
- Geliştirici > Visual Basic’e tıklayarak VBA düzenleyicisini açın. (Geliştirici sekmesini görmüyorsanız, Dosya > Seçenekler > Şerit Özelleştirme’ye gidin ve "Geliştirici" seçeneğini etkinleştirin.) VBA düzenleyicisi
- VBA penceresinde yeni bir modül eklemek için Ekle > Modül seçeneğine tıklayın.
- Aşağıdaki VBA kodunu modüle yapıştırın:
Sub ExtractTopNList()
'Updated by Extendoffice 2025/7/24
Dim DataRange As Range
Dim OutputRange As Range
Dim N As Integer
Dim ws As Worksheet, tempWS As Worksheet
Dim xTitleId As String
Dim LastCol As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set ws = ActiveSheet
Set DataRange = Application.InputBox("Select the full data range to analyze (including headers)", xTitleId, ws.UsedRange.Address, Type:=8)
Set OutputRange = Application.InputBox("Select the top-left cell of the output area", xTitleId, "", Type:=8)
N = Application.InputBox("How many top items to extract? (Enter a positive integer)", xTitleId, 10, Type:=1)
If DataRange Is Nothing Or OutputRange Is Nothing Or N < 1 Then Exit Sub
' Create a temporary worksheet to avoid sorting original data
Set tempWS = Worksheets.Add(After:=Worksheets(Worksheets.Count))
DataRange.Copy tempWS.Range("A1")
' Determine last column for sorting key
LastCol = DataRange.Columns.Count
' Sort in temporary sheet
tempWS.UsedRange.Sort Key1:=tempWS.Cells(1, LastCol), Order1:=xlDescending, Header:=xlYes
' Copy headers and top N rows to output
tempWS.Rows(1).Copy Destination:=OutputRange
tempWS.Range("A2").Resize(N, LastCol).Copy Destination:=OutputRange.Offset(1, 0)
' Optional: Delete temporary sheet
Application.DisplayAlerts = False
tempWS.Delete
Application.DisplayAlerts = True
Application.CutCopyMode = False
End Sub 4. Makroyu çalıştırmak için verilerinizin başlıklı bir tablo şeklinde düzgün biçimde düzenlendiğinden emin olun. F5 tuşuna basın veya VBA düzenleyicideki
düğmesine tıklayın. Sizden şunlar istenecektir:
- Veri Aralığı'nizi seçin (uygun sıralama için başlıkları da dahil edin).
- Sonuçların yapıştırılacağı hedef hücreyi seçin.
- N sayısını girin (örneğin, En İyi 10 için 10).
Makro, belirttiğiniz konuma üst N girdisini (başlıklar dahil) kopyalar.
İlk kez test ederken bunu çalışma kitabınızın bir yedek kopyasında kullanmanızı öneririz. Hatalar oluşursa (örneğin yanlış bir aralık seçmek gibi), işlemi tekrar çalıştırın ve aralıklarınızın ile veri düzeninizin doğru olduğundan emin olun.
Bu çözüm, tekrarlayan raporlama görevlerini otomatikleştirmek, panolar oluşturmak veya manuel formüller ve sıralama işlemlerine gerek kalmadan üst N raporlarını hızla güncellemek için idealdir. Ayrıca, daha karmaşık sıralama mantıkları (örneğin belirli bir sütuna göre sıralama) uygulamak ya da sonuçları başka bir çalışma kitabına aktarmak gibi işlemleri gerçekleştirmek üzere VBA betiğini daha da özelleştirebilirsiniz.
Sorun Giderme: Makro beklenen şekilde çalışmıyorsa, veri tablonuzun uygun başlıklara sahip olduğundan emin olun, sıralama sorunlarını önlemek için veri türlerini düzeltin ve her istekte hücre başvurularının doğru şekilde seçildiğinden emin olun. Kazara veri değişikliklerini önlemek için makroları çalıştırmadan önce çalışmalarınızı mutlaka kaydedin.
Özetle, Excel dinamik bir üst N listesi oluşturmak ve sürdürmek için çok çeşitli yöntemler sunar: geleneksel formüllerden güçlü Office 365 işlevlerine, etkileşimli analiz için PivotTable’lere ve gelişmiş otomasyon için VBA makrolarına kadar. İş akışınızla ve veri ölçeğinizle en iyi uyum sağlayan yöntemi seçin. Formüller çoğu manuel analiz senaryosunda etkilidir; Office 365 işlevleri en yüksek kolaylık ve gücü sağlar; PivotTable, hızlı ve esnek özetlemeler için mükemmeldir; VBA ise büyük çaplı, tekrarlayan sıralama görevlerini otomatikleştirmede özellikle değerlidir. Formüllerinizin veya kodunuzun bütünlüğünü her zaman doğrulayın ve proje ilerledikçe veri yapınızdaki değişikliklere uyum sağlamak için hücre başvurularınızı güncellemeyi ihmal etmeyin.
En İyi Office Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi üst düzeye taşıyın ve hiç yaşanmamış bir verimlilik deneyimi yaşayın.Kutools for Excel, verimliliği artırmak ve Zamanı Kaydet için 300'den fazla gelişmiş özelliğe sahiptir.İhtiyacınız olan özelliği hemen alınmak için buraya tıklayın…
Office Tab, Office uygulamalarına sekmeli bir arayüz kazandırarak işlerinizi çok daha kolay hale getirir.
- Word, Excel ve PowerPoint içinde sekmeli düzenleme ve okumayı etkinleştirin, Publisher, Access, Visio ve Project.
- Birden fazla belgeyi yeni pencerelerde değil, aynı pencerenin yeni sekmelerinde açın ve oluşturun.
- Günlük verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasından tasarruf etmenizi sağlar!
Tüm Kutools eklentileri, tek bir yükleyiciyle!
Kutools for Office paketi; Excel, Word, Outlook ve PowerPoint için eklentileriyle birlikte Office Tab Pro’yu da içerir ve Office uygulamalarında çalışan ekipler için idealdir.
- Hepsi bir arada paket— Excel, Word, Outlook ve PowerPoint eklentileri + Office Tab Pro
- Tek yükleyici, tek lisans— birkaç dakikada kurulum (MSI uyumlu)
- Birlikte daha iyi çalışır— Office uygulamaları arasında akıcı verimlilik
- 30 günlük tam özellikli deneme— kayıt gerekmez, kredi kartı gerekmez
- En iyi fiyat performans— tek tek eklenti satın alımına göre tasarruf edin