• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

sayı sayma

Katılım
21 Haziran 2021
Mesajlar
64
Excel Vers. ve Dili
türkçe
excel sutunumda örnek olarak 1 den 4 tane 3 den 5 tane 2 den 10 tane var. Ben bunu bilmek için hangi förmülü kullanmalıyım
 
Merhaba,

EĞERSAY formülünü kullanın.
 
KTF ile
Örnek Kritersay(A10;9)
Deneyiniz


Kod:
Function Kritersay(işlemhucresi As String, kriter As String) As Integer
   ' *** Kriter adedi say

   Dim ayır      As Integer
   Dim say     As Integer

   ayır = InStr(işlemhucresi, kriter)
   say = 0

   Do While ayır > 0
      say = say + 1

      ayır = InStr(ayır + 1, işlemhucresi, kriter)
   Loop

   Kritersay = say

End Function
 
Merhaba,
Alternatif olarak Pivot Table'ı da kullanabilirsiniz.
 
KTF ile
Örnek Kritersay(A10;9)
Deneyiniz


Kod:
Function Kritersay(işlemhucresi As String, kriter As String) As Integer
   ' *** Kriter adedi say

   Dim ayır      As Integer
   Dim say     As Integer

   ayır = InStr(işlemhucresi, kriter)
   say = 0

   Do While ayır > 0
      say = say + 1

      ayır = InStr(ayır + 1, işlemhucresi, kriter)
   Loop

   Kritersay = say

End Function
FONKSİYON GELMEDİ AMA YAZINCA
 
Mahir Bey'in bahsettiği formül

Kod:
=EĞERSAY(A:A;Q2)
 
FONKSİYON GELMEDİ AMA YAZINCA

KTF kullanıcı tanımlı fonksiyon olduğu için otomatik gelmeyecektir.
Bunu sizin vba project alanına yapıştırmanız ile beraber kullanılır . Dilersenizde bunu kaydetdederek her daim kullanabilirsiniz.
Bakınız..

Ayrıca daha gelşmiş olanı isterseniz aşağıdaki şekilde de kulllanılabilir.

Birlestirsay(",";5;A6:A10)

Kod:
Function Birlestirsay(Ayrac As Variant, kriter As String, ParamArray SecilenHucreAraligi() As Variant) As String
 Dim ayır      As Integer
   Dim say     As Integer
    Dim Cell As Range, Area As Variant

    If IsMissing(Ayrac) Then Ayrac = ","

    For Each Area In SecilenHucreAraligi
        If TypeName(Area) = "Range" Then
            For Each Cell In Area
                If Len(Cell.Value) Then Birlestirsay = Birlestirsay & Ayrac & Cell.Value
            Next
        Else
            Birlestirsay = Birlestirsay & Ayrac & Area
        End If
    Next

    Birlestirsay = Mid(Birlestirsay, Len(Ayrac) + 1)
    
   ayır = InStr(Birlestirsay, kriter)
   say = 0

   Do While ayır > 0
      say = say + 1

      ayır = InStr(ayır + 1, Birlestirsay, kriter)
   Loop

  Birlestirsay = say
      
End Function
 
Geri
Üst