Excel'de Otomatik Satır Numaralandırma: Basit Formüllerden Akıllı Tablolara
Excel'de otomatik satır numaralandırma yapmak için, ofset çıkartmasıyla birlikte =SATIR() (veya İngilizce sürümde =ROW()) fonksiyonunu kullanın, örneğin =SATIR()-1. Modern Excel sürümleri (365, 2021) için en uygun çözüm, formülleri sürüklemeye gerek kalmadan dinamik bir dizi oluşturan =DIZI() fonksiyonudur. Veriler "Akıllı Tablo" içindeyse, yeni kayıtlar eklendiğinde numaralandırma otomatik olarak güncellenir.
Temel Numaralandırma Yöntemleri
En basit yöntem, geçerli satır numarasını döndüren bir fonksiyon kullanmaktır. Ancak sadece =SATIR() eklemek yeterli değildir, çünkü bu fonksiyon sayfa satır numarasını döndürür (örneğin, formül ikinci satırda ise 2). Numaralandırmanın birden başlaması için başlık satırlarının sayısını çıkarmak gerekir.
Klasik formül:
Verileriniz 2. satırdan başlıyorsa (1. satır başlıktır), A2 hücresine şunu girin:
=SATIR()-1
Bu formülü aşağıya kopyaladığınızda 1, 2, 3 vb. şeklinde bir sıra elde edersiniz. Veriler 5. satırdan başlıyorsa, formül =SATIR()-4 olarak değişir.
Ofseti manuel olarak hesaplamamak için, veri bloğunun ilk hücresine mutlak referans kullanın. =SATIR()-SATIR($A$2)+1 formülü, veri bloğunu başka bir sayfaya taşısanız bile otomatik olarak uyum sağlar. Dolar işaretleri $ ilk satırın adresini sabitler.
Yeni Sürümlerde Dinamik Numaralandırma (Excel 365, 2021+)
Modern Excel sürümlerinin sahiplerinin formülü tablonun sonuna kadar sürüklemesine gerek yoktur. DIZI (SEQUENCE) fonksiyonu, tek bir formülle bir sayı dizisi oluşturur.
Sözdizimi: =DIZI(satır_sayısı; [sütun_sayısı]; [başlangıç]; [adım])
Kullanım örneği:
B sütununda (B2:B101) 100 ürünlik bir listeniz olduğunu varsayalım. A2 hücresine tek bir formül girmek yeterlidir:
=DIZI(SATIRSAY(B2:B101))
Bu formül, A2:A101 aralığını otomatik olarak 1'den 100'e kadar olan sayılarla doldurur.
- Avantaj: Listenin ortasından bir satırı silerseniz, numaralandırma boşluk kalmadan anında yeniden hesaplanır.
- Detay: Tek bir formül olduğu için böyle bir dizi içindeki tek bir hücreyi silemezsiniz.
"Akıllı Tablolar"da Numaralandırma
Bir aralığı tabloya dönüştürmek (Ctrl+T tuş kombinasyonu) verilerle çalışmanın en iyi yoludur. Tablolarda formüller otomatik olarak kopyalanır ve referanslar yapılandırılmış hale gelir.
- Veri aralığını seçin ve
Ctrl+Ttuşlarına basın. - Yeni tablonun ilk sütununa şu formülü girin:
=SATIR()-SATIR(Tablo1[#Başlıklar])(Veya arayüzü kullanın:=[@Tutar]uygun değildir, yapıya referans gerekir).
Tablolar için daha güvenilir bir seçenek, tablonun kendisine göre SATIR fonksiyonunu kullanmaktır:
=SATIR([@])-SATIR(Tablo1[#Başlıklar])
Excel'in Türkçe sürümlerinde tablo adı "Tablo1" olabilir, İngilizce sürümlerde "Table1" olabilir. Başlıkların adı [#Başlıklar] veya [#Headers] olarak yazılabilir. Sözdiziminde hata yapmamak için giriş yaparken otomatik tamamlamayı (Tab) kullanın.
Yöntemin en büyük avantajı: Tablonun altına yeni bir satır eklendiğinde, formül ve numara otomatik olarak yerleştirilir.
Filtreleri ve Gizli Satırları Dikkate Alma
Normal formüller (SATIR, DIZI) filtreleri yok sayarak tüm satırları art arda numaralandırır. Listeyi "İstanbul" kriterine göre filtrelerseniz, numaralar 1, 5, 8, 12... olarak kalır ki bu yazdırma veya analiz için uygun değildir.
Sadece görünür satırları sürekli numaralandırmak için, ofset ile birlikte ARA.TOPLAM (SUBTOTAL) fonksiyonunu kullanın.
A2 hücresi için formül (aşağıya sürükleyin):
=ARA.TOPLAM(3; $B$2:B2)
Burada:
3— SAYA fonksiyon kodu (boş olmayan hücreleri sayma).$B$2:B2— genişleyen aralık. İlk kısım sabitlenmiştir, ikincisi sürüklendiğinde değişir.
Bu yapı, filtreye gizlenen satırları yok sayarak, B sütunundaki dolu hücrelerin sayısını başlangıçtan geçerli satıra kadar yeniden hesaplar. Sonuç: Filtreleme uygulandığında, numaralandırma yalnızca görüntülenen kayıtlar için kesintisiz olur (1, 2, 3...).
Numaralandırma Yöntemlerinin Karşılaştırılması
| Yöntem | Formül | Ne Zaman Kullanılır | Özellikler |
|---|---|---|---|
| Klasik | =SATIR()-1 | Statik listeler, eski Excel sürümleri | Manuel sürükleme gerektirir, araya satır eklendiğinde bozulur |
| Dinamik | =DIZI(...) | Excel 365/2021, büyük diziler | Tüm sütun için tek formül, otomatik yeniden hesaplama |
| Tablo Bazlı | =SATIR([@])... | Çalışan veritabanları, düzenli raporlar | Otomatik satır ekleme, şık görünüm |
| Filtreli | =ARA.TOPLAM(...) | Rapor yazdırma, filtrelenmiş veri analizi | Sadece görünenleri numaralandırır, bitişik sütunun doldurulmasını gerektirir |
Sık Yapılan Hatalar
- Satır eklendiğinde sıranın bozulması. Basit
=SATIR()-1formülünü kullanıyorsanız ve 5 ile 6 numaraları arasına yeni bir satır eklerseniz, numaralandırma bozulur. Çözüm: "Akıllı Tablolar" veyaDIZIfonksiyonunu kullanın. - Yanlış başlangıç sayımı. Sık yapılan bir hata, başlık satır numarasını çıkarmayı unutmaktır. Kullanıcı
=SATIR()-1yerine=SATIR()yazar ve numaralandırma 2 veya daha fazlasından başlar. - Filtrelerin göz ardı edilmesi. Yönetim için rapor hazırlarken kullanıcılar, filtre uygulandıktan sonra standart numaralandırmanın atlamalar göstereceğini (1, 4, 7) unuturlar. Bu durumlar için
ARA.TOPLAMyöntemi zorunludur.
SSS
Numaralandırmaya 1 yerine başka bir sayıdan (örneğin 100'den) nasıl başlanır?
Formüle gerekli ofseti ekleyin. Klasik yöntem için: =SATIR()-1+99 (2. satırdan başlıyorsa). DIZI fonksiyonu için üçüncü argümanı belirtin: =DIZI(10; 1; 100; 1) 100'den 109'a kadar sayılar oluşturur.
Sadece dolu satırlar numaralandırılabilir mi?
Evet. Formülü bir KOŞUL içine alın. Örnek: =EĞER(B2=""; ""; SATIR()-1). Numara yalnızca bitişik B2 hücresinde veri varsa görünür.
Satırları 2 adım aralıklarla (1, 3, 5...) numaralandırmak gerekirse ne yapılmalı?
DIZI fonksiyonunda son argümanı (adım) değiştirin: =DIZI(10; 1; 1; 2). Klasik formülde sayacı çarpın: =(SATIR()-1)*2-1.