Excel’de şarta göre sayma formülleri, belirli bir şarta sahip hücrelerin adetlerini bulmak için kullanılır. İlk başta biraz amaç dışı gibi görülebilir, en nihayetinde verinin kendisi ile iş yapmıyoruz ancak daha önce anlattığım KAYDIR, INDIS ve KAÇINCI gibi formüller ile beraber kullanıldığında çok çok güzel sonuçlar almamızı sağlayabilir. Şimdi isterseniz bu formüller nelerdir onlara bakalım. Sonrasında sırası ile açıklamalarını yapalım.

  • EĞERSAY
  • ÇOKEĞERSAY

Yapacağım uygulamalar için örnek dosyaya buradan erişebilirsiniz.

İsterseniz öncelikle formülün yazılımına bakalım:

=EĞERSAY(Aralık, Ölçüt)

İngilizce Excel kullananlar için formül COUNTIF. Oldukça basit bir yazılımı var. Önce ölçütü arayacağımız aralığı tanımlıyoruz. Bu aralık daha önce kullandığımız aralık döndüren formüllerin sonuçları da olabilir, örnek KAYDIR.

Ölçüt ise aralıkta bulmak istediğimiz değer. Örnek üzerinden açıklama yapalım.

Şimdi tabloda ilk Sütunda kaç tane “Hasan” ismi var bulalım. Formülümüz:

=EĞERSAY($B$2:$B$41;”Hasan”)

Formülümüz nasıl çalışıyor? B2:B41 aralığındaki tüm hücrelerin değerlerini “Hasan” değeri ile kıyaslıyor. Eğer hücre değeri “Hasan” ile eşleşiyor ise bu kıyasın sonucu “DOĞRU”, eğer eşleşme yoksa sonuç “YANLIŞ” oluyor. DOĞRU ifadesinin matematik karşılığı 1, YANLIŞ’ın ise 0’dır. Yani formül kıyaslama sonrasında 0 ve 1’lerden oluşan bir dizin elde ediyor ve bu dizindeki tüm 1’lerin toplamını geri döndürüyor.

Formülün sonucu 3.

Formülün nasıl çalıştığını gösteren bir resmi de aşağıda veriyorum.

Bu tabloda kaç tane metin mevcut bulmak için ufak bir hile yapacağız, daha önce anlattığım joker karakterleri hatırlıyor musunuz? Hatırlarsanız “*” karakteri birden fazla harf yerine geçiyordu, işte burada kıstas kısmına “*” yazarsak sadece metin girilmiş hücrelerin adetlerini buluruz, örnek:

=EĞERSAY($B$2:$I$41;”*”)

Bu formülü yazıp çalıştırdığınızda A-H aralığında metin değeri barındıran tüm hücreler sayılacaktır. Tablo başlıklarını da dahil ettiğimiz için de sonuç 124 olarak geri döndürülecektir. Gördüğünüz gibi bu formülde joker karakterleri kullanabiliyoruz, ve gayet güzel sonuçlar alabiliyoruz.

Sonu “t” ile biten isimleri bulmak için yazmamız gereken formül:

=EĞERSAY($B$2:$B$41;”*t”)

Sonuç 12.

Formülümüzü tarihlerde kullanabilir miyiz? Evet. Formülümüz:

=EĞERSAY($D$2:$D$41;”11/10/2016″)

Sonuç 13.

Bu formülde de ilk yazımda bahsettiğim karşılaştırma kıstaslarını da kullanabilirsiniz. Misal 12/10/2016 ve öncesinde yapılan satışlar için kullanacağımız formül:

=EĞERSAY($D$2:$D$41;”<=12/10/2016″)

Burada dikkat edeceğiniz husus büyük küçük gibi ifadelerin yazılış şekli. Burada ben 12/10/2016 tarihinden önce olan satışları bulmak istiyorum bu nedenle tarihten önce “<=” ifadesi kullandım, yani bu tarih bu aralıkta bulunan değerlerden büyük ve eşit olacak.

Temel olarak bir önceki formül ile aynı ancak daha fazla kıstas tanımlayabildiğimiz bir formül. Yazılımı:

=ÇOKEĞERSAY(Ölçüt Aralığı, Ölçüt,…)

İngilizce olarak COUNTIFS. Bir önceki formülde kullandığımız tek aralık tek kıstas yerine çoklu kıstaslar tanımlayabiliyoruz. Temel farkımız bu. Tek aralık tek kıstas kullanırsanız bir önceki formüldeki örneklerin aynılarını yapabilirsiniz. Ek olarak belirli tarihler arasında kalan satış adetlerini de bulabilirsiniz. Bir örnekle açıklayalım, burada belli tarihler arasındaki satışları bulmak isteyelim:

=ÇOKEĞERSAY($D$2:$D$41;”>=11/10/2016″;$D$2:$D$41;”<=12/10/2016″)

Sonuç 26.

Burada yapılan da bir önceki formülün yaptığı ile temelde aynı. Örnek olarak burada tarih sütunu için iki tane kıstas girilmiş. Bu kıstaslara göre ilgili sütunda yer alan her bir hücredeki tarih değeri girilen kıstaslardaki tarihlere göre büyük kontrolü yapılıp sonuç “1” veya “0” olarak çıkarılıyor sonrasında yine diğer tarihten küçük olup olmadığı kontrol edilerek yine “1” ve “0” olarak sonuçları alınıyor. Sonra bu iki sonuç çarpılarak nihai bir değer elde ediliyor. Aralıktaki tüm hücreler için bu kontroller yapıldıktan sonra elde edilen çarpım sonuçları toplanarak formülün sonucu olarak geri döndürülüyor.

Bu formül ile siz belli satış cirosundan fazla olan belli kişilerin yaptığı satışların adedini bulmak için veya belli tarihler arasında belli kişilerin kaç adet kadar satış yaptığını da bulabilecek formüller yazabilirsiniz.

Bir önceki formülden tek farkı birden fazla aralığa birden fazla kıstas tanımlayabilmeniz. Bunun haricinde gerek yazım kuralları gerek kıstaslar için kullanacağınız ifadeler bir önceki formülle aynı. Bu nedenle bu formülle ilgili daha fazla açıklama yapmaya gerek olduğunu düşünmüyorum.

İlginizi Çekebilecek Diğer Yazılar
Etiketler: , , , ,
  1. Merhaba.
    Ben iki sutundaki metinlerin karşılığını toplamak istiyorum.
    yani istanbul da kalan kızlar.
    istanbul da kalan erkekler
    kartal da kalan erkekler
    kartalda kalan kızlar
    gibi farklı toplamlar almak için nasıl bir formul yapmalıyım.Teşekkürler

    • farklı kıstaslara göre toplama yazımda benzer toplama işlemlerinin nasıl yapılacağından bahsetmiştim.

  2. Merhaba, ben belirli bir saat aralığında olan verilere belirli bir değer vermek istiyorum. Mesela verinin saati 10:00:00 ile 13:00:00 arasındaysa OK yazsın değilse YOK yazsın gibi. Yardımcı olabilir misiniz

    • Merhaba,
      EĞER(VE(MOD(ŞİMDİ();1)>=ZAMANSAYISI(“10:00:00”);MOD(ŞİMDİ();1)<=ZAMANSAYISI("13:00:00"));"OK";"YOK") formülü ile çözebilirsiniz.

    • Merhaba, Metin içeren 2 hücreyi karşılaştırıyorum, birinde Türkçe karakter var diğerinde yok, Türkçe karakteri göz aradı ederek karşılaştırma yapmanın yolu var mı

      • merhaba,

        bunun basit bir yöntemi yok. ya iç içe yerinekoy formülü ile tüm Türkçe karakterlerin yerine İngilizce olanları getireceksiniz ya da bir makro ile bu işlemi yapacaksınız. bazı formüller ile bu karakterleri silmek mümkün ama karşılaştırma esnasında sorun çıkarır.

  3. Merhaba,

    Ben iki sayı aralığındaki sayıları sayan formülü arıyorum ama bir türlü bulamadım. Yardımcı olabilir misiniz?

    • merhaba,
      Biraz daha açık olabilir misiniz? Bu sayılar iki farklı hücrede ve arada kalan hücrelerdeki sayıları mı toplamak istiyorsunuz?

  4. merhaba benim istediğim tam olarak şu
    A A A D D : Burası tek bir hücre
    A : Burası da alttaki hücre, yani üstteki B2 hücresiyse burası B3 hücresi.
    Benim isteğim ise buradaki A sayısını yazan formülü bulmak. Yanı burada 4 tane A var. Bunu çıkaran bir formül istiyorum. Yardımcı olabilir misiniz?

    • merhaba
      Bu A rakamlarının hepsini mi çıkarmak istiyorsunuz? sadece en soldakikini mi? rakam kaç basamak? aralarındaki ayrım hangi karakter ile (boşluk, virgül vs.) buna göre eğer sadece en soldakini alacak iseniz ve aralarında boşluk var ise –SOLDAN(B1;BUL(” “;B1)-1) formülü ile çekebilirsiniz. eğer tüm rakamları çekmek istiyorsanız bunun için –SAĞDAN(B1;UZUNLUK(B1)-BUL(” “;B1)) formülü ile metnin geri kalanını çekmeniz gerek.

  5. Merhabalar;

    Ben bir sütundaki değerlerin saydırılmasını istiyorum fakat aynı değerleri 1 kez saymasını istiyorum. Bunu nasıl yapabilirim?
    Teşekkürler.

    • Merhaba,

      Değerlerin B2:B12 aralığında olduğunu varsayarsak =TOPLA.ÇARPIM(1/EĞERSAY(B2:B12;B2:B12)) formülü ile istediğiniz sonucu bulursunuz. Ancak burada hangi değerden kaç tane olduğunu değil toplamda kaç tane benzersiz değer olduğunu bulur. Bilginize.

  6. Merhaba,

    Benim a1 sutününde tarihler var b1 sutününde harfler var (a,b,c,d) başka bir hücrede ocak ayındaki a, ocak ayındaki b, … gibi saydırma yapabilir miyim?

    • Merhaba,

      1. satırda sütun başlıkları, 2 satırdan itibaren değerlerin olduğunu var sayarsak aşağıdaki formülü kullanabilirsiniz.

      =METNEÇEVİR($A2;”aaaa”) &” ayındaki ” &$B1

  7. Merhaba Hocam,

    Bir satırdaki belirli bir aralıkta sıfırdan büyük rakam içeren en son hücreyi nasıl bulurum?

    Örneğin: F2 hücresindeki 8 değerini alıp B2 hücresine yazmak istiyorum.

    C2 D2 E2 F2 G2 H2
    4 0 6 8 0 0

  8. SIRA NO T.C. KİMLİK NO ADI SOYADI BELGE TARİHİ KAÇ DEFA BELGE ALDIĞI KAÇINCI DEFA
    1 1234 ali 1.01.2020
    2 1235 ahmet 2.02.2020
    3 2145 hasan 1.02.2020
    4 1452 ali 3.02.2020
    5 3256 hasan 4.01.2020
    6 4857 mehmet
    7 6579 veli
    C sütunundaki isimlerin E sütununda
    kaç kez belge aldığını göstersin, her yeni isim de listenin altına eklensin.
    Şöyle ki;
    KAÇ DEFA BELGE ALDIĞI KAÇINCI DEFA
    ali 2
    ahmet 1
    hasan 2
    mehmet 1
    veli 1
    ……. 1
    ……. 1

    • Burada gösterdiğim yöntemler ile bunu hesaplayabilirsiniz? tam olarak nere takıldınız?

  9. Merhaba, Ben sabit bir tarihten sonraki güncel tarihe kadar olan ayları saydırmak istiyorum
    bunu nasıl yapabilirim. Yardımınız için şimdiden teşekkür ederim

    • Merhaba,

      ETARİHLİ(BAŞLANGIÇ_TARİHİ;BUGÜN();”M”) formülü ile yapabilirsiniz. Eğer günleri dahil etmeyecekseniz =AY(BUGÜN())-AY(BAŞLANGIÇ_TARİHİ) formülünü de kullanabilirsiniz. Bilgi olara ETARİHLİ formülü Lotus uyumluluğu için eklenmiştir ve Excel Tarih işlevleri içinde yer almaz.

      Saygılarımla

  10. Tekrar Merhaba Erol bey,
    Devam ettiğim programda bir yerde takıldım, eğer mümkünse bir çözüm yardımı rica edeceğim. Bir sayfada yazılı olan satırları baska bir çalışma sayfasına aktarıyorum fakat ilk sayfada sildiğim satırları ikinci sayfada boşlukları kaldırarak otomatik olarak sıraya girmesini istiyorum. Epey araştırdım fakat bir komut bulamadım. Yardımınız için şimdiden teşekkür ederim.

    • Merhaba,

      Bunu formüllerle yapmak istiyorsanız =TOPLAMA(15;6;SATIR(Sayfa1!$A$1:A100)/(Sayfa1!$A$1:$A$100<>“”);SATIRSAY(Sayfa2!$$B1:$B1)) gibi bir formülle hangi satırlarda veri olduğunu bulmalı ve çıkan sonucu İNDİS formülü ile istediğiniz hücredeki değeri çekmek için kullanmanız gerekmekte.

      Saygılarımla,

Leave a Reply