BAĞ_DEĞ_SAY mı BAĞ_DEĞ_DOLU_SAY mı? Excel'de Hangi Hücre Sayılır
İki işlev aynı aralıkta farklı sonuç verir; biri yalnız sayıları, öteki boş olmayan her hücreyi sayar. Farkı bilen kişi kayıt sayısını, eksik veriyi ve sayıya dönüşmemiş değerleri tek bakışta yakalar.
Bir bakışta
- BAĞ_DEĞ_SAY aralıkta yalnız sayı ve tarih içeren hücreleri sayar. Metin, mantıksal değer, hata değeri ve boş hücre aralığın içinde olduğunda sonuca girmez.
- BAĞ_DEĞ_DOLU_SAY boş olmayan her hücreyi sayar; hata değerleri ve boş metin döndüren formüller de dahildir. Ekranda boş görünen bir hücre, içinde formül varsa dolu kabul edilir.
- Aynı sütunda iki sonucun farklı çıkması, sayı olması gereken bir alanda sorun olduğunu gösterir. Metin olarak saklanmış sayılar ve hata değerleri tam olarak bu farkın içinde saklanır.
- BOŞLUKSAY boş metin döndüren formülleri de boş sayar. Bu yüzden aynı aralıkta BAĞ_DEĞ_DOLU_SAY ile BOŞLUKSAY sonuçlarının toplamı hücre sayısını aşabilir.
Ortak zemin: koşul sormadan sayan işlevler
BAĞ_DEĞ_SAY ve BAĞ_DEĞ_DOLU_SAY, Excel'in koşulsuz sayma işlevleridir. İkisi de bir ya da birden fazla değeri, hücre başvurusunu veya aralığı alır ve kaç öğenin sayıldığını tek bir sonuçla döndürür. İngilizce arayüzdeki karşılıkları COUNT ve COUNTA'dır; Türkçe arayüzde formül çubuğunda Türkçe adlar görünür. Hiçbiri bir ölçüte bakmaz: "satış bölgesi Ege olan kayıtlar" gibi bir koşul gerektiğinde EĞERSAY ya da ÇOKEĞERSAY kullanılır.
İkisini ayıran tek soru şudur: hangi tür içerik sayılmaya değer? BAĞ_DEĞ_SAY yalnız sayısal içeriği, BAĞ_DEĞ_DOLU_SAY ise türüne bakmadan boş olmayan her hücreyi sayar. Aileye bir üçüncü işlev daha eklenir: BOŞLUKSAY, aralıktaki boş hücreleri sayar. Bu işlevler birlikte üç temel soruyu yanıtlar: kaç sayısal değer var, kaç hücre dolu, kaç hücre boş.
Ölçüt ölçüt: hangi hücre sayılır, hangisi sayılmaz?
- Sayı ve tarih: BAĞ_DEĞ_SAY sayar / BAĞ_DEĞ_DOLU_SAY sayar. Excel tarihleri sayı olarak sakladığı için bir tarih sütunu BAĞ_DEĞ_SAY ile de sayılır; sıfır değeri içeren hücre de sayıdır.
- Metin: BAĞ_DEĞ_SAY aralıktaki metni saymaz / BAĞ_DEĞ_DOLU_SAY sayar. Hücrede metin olarak saklanmış bir sayı da bu kurala girer; görünüşü sayı olsa bile BAĞ_DEĞ_SAY onu atlar.
- Mantıksal değerler (DOĞRU, YANLIŞ): BAĞ_DEĞ_SAY aralıktakileri saymaz / BAĞ_DEĞ_DOLU_SAY sayar.
- Hata değerleri: BAĞ_DEĞ_SAY saymaz / BAĞ_DEĞ_DOLU_SAY sayar.
- Boş metin döndüren formül: BAĞ_DEĞ_SAY saymaz / BAĞ_DEĞ_DOLU_SAY dolu kabul eder ve sayar.
- Gerçekten boş hücre: ikisi de saymaz.
- Formüle doğrudan yazılan değerler: BAĞ_DEĞ_SAY, bağımsız değişken listesine doğrudan yazılan mantıksal değerleri ve tırnak içindeki sayı metinlerini sayar. Aralık başvurusuyla çalışırken bu ayrıntı nadiren önem taşır.
BOŞLUKSAY tablonun öbür ucundadır: gerçekten boş hücreleri ve boş metin döndüren formül içeren hücreleri sayar; sıfır değeri içeren hücreyi ise boş saymaz. Boş metin döndüren bir hücre böylece hem BAĞ_DEĞ_DOLU_SAY'a hem BOŞLUKSAY'a girer.
Aynı hücre, üç işlevde üç farklı muamele görebilir
| BAĞ_DEĞ_SAY | BAĞ_DEĞ_DOLU_SAY | BOŞLUKSAY | |
|---|---|---|---|
| Sayı, tarih, sıfır | Sayar | Sayar | Saymaz |
| Metin ve metin biçimli sayı | Saymaz | Sayar | Saymaz |
| DOĞRU, YANLIŞ | Aralıkta saymaz | Sayar | Saymaz |
| Hata değeri | Saymaz | Sayar | Saymaz |
| Boş metin döndüren formül | Saymaz | Sayar | Sayar |
| Gerçekten boş hücre | Saymaz | Saymaz | Sayar |
Boş görünen ama dolu sayılan hücreler
Farkın en çok kafa karıştırdığı yer, formülle doldurulmuş sütunlardır. Bir hesap sütununda "kaynak hücre boşsa boş metin döndür, değilse hesapla" mantığında bir EĞER formülü kurmak yaygın bir düzendir. Sütun ekranda yarı yarıya boş görünür; ama BAĞ_DEĞ_DOLU_SAY formül içeren her satırı dolu sayar ve sonuç, gerçekten değer üretmiş satır sayısından büyük çıkar. Aynı aralıkta BOŞLUKSAY da bu satırları boş sayar. İki sonuç toplandığında aralıktaki hücre sayısından fazlası elde edilirse sebep neredeyse her zaman boş metindir.
Benzer bir tuzak, içinde yalnız boşluk karakteri olan hücrelerdir. Dışarıdan aktarılan listelerde ya da elle silinip yerine boşluk yazılan hücrelerde görülür. Boşluk bir metin karakteridir: BAĞ_DEĞ_DOLU_SAY bu hücreyi dolu sayar, BOŞLUKSAY saymaz ve hücre gözle ayırt edilemez.
Formül sütununda gerçekten değer üretmiş hücreleri saymanın yolu sonucun türüne bağlıdır. Sonuç sayısalsa BAĞ_DEĞ_SAY yeterlidir, çünkü boş metni zaten atlar. Sonuç metinse boş metni dışarıda bırakan koşullu bir sayım kurmak gerekir.
Hangi durumda hangisi?
Seçimi belirleyen, ne saymak istediğinizdir; işlev adını hatırlamak değil.
- Tablodaki kayıt sayısı: her satırda mutlaka dolu olan bir sütunda, genellikle kimlik ya da kod sütununda, BAĞ_DEĞ_DOLU_SAY. Sipariş kodu, personel sicili gibi alanlar çoğu zaman harf içerdiği için metindir; bu sütunda BAĞ_DEĞ_SAY sıfır döndürür.
- Sayısal bir alanın kaç kayıtta girildiği: tutar, miktar, puan ya da tarih sütununda BAĞ_DEĞ_SAY. Bir ortalamanın kaç değere dayandığını göstermek için de bu işlev kullanılır.
- Eksik bırakılmış hücreler: veri satırlarıyla sınırlanmış bir aralıkta BOŞLUKSAY. Sütunda boş metin döndüren formül varsa sonucun bu hücreleri de içerdiği unutulmamalıdır.
- Bir koşulu sağlayan hücreler: EĞERSAY ya da ÇOKEĞERSAY.
- Benzersiz değer sayısı: bu işlevlerin hiçbiri yinelenenleri ayıklamaz; tekrar eden kayıtları ayıran ayrı bir yöntem gerekir.
İşlevi, saymak istediğiniz şey belirler
- Tablodaki kayıt sayısınıBAĞ_DEĞ_DOLU_SAYHer satırda dolu olan kimlik ya da kod sütununda
- Sayısal bir alanın girildiği kayıtlarıBAĞ_DEĞ_SAYTutar, miktar, puan ve tarih sütunlarında
- Eksik bırakılmış hücreleriBOŞLUKSAYBoş metin döndüren formüller de boş sayılır
- Bir koşulu sağlayan hücreleriEĞERSAY ya da ÇOKEĞERSAY
Örnek: bir sipariş listesinde sayımlar ne anlatır?
Bir satış ekibinin sipariş listesini düşünün: A sütununda harf ve rakamdan oluşan sipariş kodu, C sütununda tutar, D sütununda teslim tarihi, E sütununda ise tutar girilmemişse boş metin döndüren bir prim formülü var. İlk satırda sütun başlıkları duruyor.
=BAĞ_DEĞ_DOLU_SAY(A:A) kayıt sayısını verir ama bir fazlasıyla: başlık da metin olduğu için sayılır. Ya sonuçtan bir çıkarılır ya da aralık yalnız veri satırlarıyla sınırlanır. Listeyi Excel tablosuna çevirip tablonun sütun başvurusunu kullanmak, başlığı otomatik olarak dışarıda bırakır.
=BAĞ_DEĞ_SAY(C:C) tutarı girilmiş sipariş sayısını verir; başlık metin olduğu için sonuca girmez. Kayıt sayısı ile bu sonuç arasındaki fark, tutarı eksik ya da sayı olarak tanınmayan siparişlerdir. Ayrımı yapmak için aynı sütunda =BAĞ_DEĞ_DOLU_SAY(C:C) çalıştırılır: başlık çıkarıldıktan sonra sonuç BAĞ_DEĞ_SAY'dan büyükse sütunda metin olarak saklanmış tutarlar vardır. Bunlar toplamda ve ortalamada sessizce atlanır; sayıya dönüştürülmeleri gerekir.
D sütununda teslim edilmemiş siparişlerin tarihi boştur. =BOŞLUKSAY(D:D) yazılırsa sonuç, verinin bittiği satırdan sayfanın sonuna kadar olan bütün boş hücreleri de içerir ve anlamsız derecede büyük çıkar; aralık veri satırlarıyla sınırlanmalıdır. E sütununda ise BAĞ_DEĞ_DOLU_SAY her satırı dolu gösterir; prim üretmiş sipariş sayısı için BAĞ_DEĞ_SAY kullanılır.
Sık yapılan hatalar ve önlenmesi
- Kayıt saymak için metin sütununda BAĞ_DEĞ_SAY kullanmak: sonuç sıfır ya da eksik çıkar. Kimlik sütununda BAĞ_DEĞ_DOLU_SAY tercih edilir.
- Tüm sütun başvurusunda başlık satırını unutmak: BAĞ_DEĞ_DOLU_SAY başlığı da sayar; sonuç her zaman bir fazladır.
- BOŞLUKSAY'ı tüm sütuna uygulamak: veri bloğunun altındaki boş hücreler de sayılır. Aralık veri satırlarıyla sınırlanmalıdır.
- Formül sütununda dolu hücre saymak: boş metin döndüren formüller dolu görünür. Sayısal sonuçlarda BAĞ_DEĞ_SAY kullanılır.
- Metin olarak saklanmış sayıları fark etmemek: BAĞ_DEĞ_SAY ile BAĞ_DEĞ_DOLU_SAY'ı aynı sütunda karşılaştırmak en hızlı teşhistir.
- Filtrelenmiş listede sonucun değişmesini beklemek: iki işlev de filtre dışında kalan satırları saymaya devam eder. Yalnız görünen satırları saymak için ALTTOPLAM işlevinin sayma seçenekleri kullanılır.
Bu hataların ortak noktası, sonucun bir hata mesajı vermemesidir. Formül çalışır, bir sayı döner ve rapora yanlış bir kayıt sayısı girer. Kritik bir raporda kayıt sayısını iki farklı işlevle kontrol etmek, ucuz ama etkili bir güvencedir.
Mindset programlarında sayma işlevleri
Bu işlevler tek başına bir konu olmaktan çok veri temizliğinin ve raporlamanın ilk kontrol adımıdır. Microsoft Excel ile Veri Analizi Eğitimi - İleri Excel (Uygulamalı), "Veri Analizi ve İleri Formüller" bölümünde sayma ve koşullu hesapları rapor kurgusu içinde ele alır; dışarıdan gelen listelerle çalışan analist ve raporlama ekipleri için uygundur.
Excel Orta Düzey ise "Veri Temizleme ve Düzenli Veri Yapısı" ile "Koşullu Fonksiyonlar ve Çok Katmanlı Hesaplamalar" bölümlerinde, metin biçimli sayılar ve boş hücreler gibi sorunları günlük tablo işinde yakalamayı çalışır.
İlgili Mindset programı
Microsoft Excel ile Veri Analizi Eğitimi - İleri Excel (Uygulamalı)
Sık sorulan sorular
BAĞ_DEĞ_SAY sayıların olduğu bir sütunda neden sıfır döndürüyor?
En olası neden, değerlerin metin olarak saklanmasıdır. Bir sistemden dışa aktarılan ya da başına kesme işareti konarak girilen sayılar görünüşte sayıdır ama Excel onları metin kabul eder. Hücrelerin sola yaslanması ve köşede uyarı işareti çıkması tipik belirtidir. Aynı sütunda BAĞ_DEĞ_DOLU_SAY sonucu yüksekken BAĞ_DEĞ_SAY düşük kalıyorsa teşhis doğrudur; değerler sayıya dönüştürüldüğünde iki sonuç birbirine yaklaşır.
Filtre uyguladığımda yalnız görünen satırları nasıl sayarım?
BAĞ_DEĞ_SAY ve BAĞ_DEĞ_DOLU_SAY filtreyi dikkate almaz. ALTTOPLAM işlevinin sayma seçenekleri ise filtre sonucuna dahil edilmeyen satırları her zaman yok sayar. Elle gizlenmiş satırlar için ALTTOPLAM'ın ayrı bir seçenek grubu vardır: bir grup bu satırları sonuca katar, öbürü dışlar. Filtrelenmiş bir listenin altına konan sayım bu yüzden ALTTOPLAM ile kurulduğunda, filtre değiştikçe kendiliğinden güncellenir.
Birden fazla aralığı tek formülde sayabilir miyim?
Evet. İki işlev de birden fazla bağımsız değişken alır; birbirine bitişik olmayan aralıklar liste ayırıcısıyla ayrılarak aynı formüle yazılır. Türkçe bölgesel ayarlarda ayırıcı genellikle noktalı virgüldür, bazı ayarlarda virgül kullanılır. Sonuç, her aralıktaki sayımların toplamıdır. Aynı hücre iki aralıkta da geçiyorsa iki kez sayılacağı için aralıkların çakışmadığından emin olmak gerekir.
Benzersiz müşteri sayısını bu işlevlerle bulabilir miyim?
Hayır. İki işlev de yalnız hücre sayar; aynı müşteri listede birkaç kez geçiyorsa her geçişi ayrı sayar. Benzersiz sayım için ya tekrar eden kayıtları ayıklayıp kalan listeyi saymak ya da pivot tabloda benzersiz sayım seçeneğini kullanmak gerekir. BAĞ_DEĞ_DOLU_SAY'ın sonucu bu durumda müşteri sayısını değil, sipariş ya da işlem sayısını verir.
İlgili rehberler
İlgili eğitimler
Kategori: Veri Analitiği ve İş Zekası