• DİKKAT

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

Countıfs kullanımı

Katılım
17 Ağustos 2005
Mesajlar
46
Excel Vers. ve Dili
Excel2007 Ing
Sub Macro3()

Dim WF As WorksheetFunction
Set WF = WorksheetFunction

Set S2 = Sheets("Giriş")
Set S1 = Sheets("Rapor")

date1 = S1.Range("B5")
date2 = S1.Range("B6")


deger = WF.CountIfs(S2.[N:N], date1, S2.[N:N], date2)

End Sub

Merhaba,
yukarıdaki bölümde giriş sayfasındaki verilerden date1 ve date2 tarih aralığında olanları saydırmak istedim ancak olmadı.
deger değişkenine aktarmak istiyorum burada date1 yazdığımda eşitse anlamına geliyor ama büyükeşit yada küçükeşit yapamadım.

yardımlarınızı rica ediyorum.
 
deger = WF.CountIfs(S2.[N:N], " >= " & date1, S2.[N:N], " <= " & date2)

bu şekilde değiştirdim yine olmadı.
 
. . .

Öneri:
Küçük bir örnek dosya eklerseniz, kontrol yapılarak çözüm üretilebilir.

. . .
 
şöyle bir şey olabilir...

Kod:
Sub tarih_say()
  
  krit = Sheets("Rapor").Range("B5:B6") 'B5 küçük tarih, B6 büyük tarih
  aralik = Sheets("Giriş").Columns("N").SpecialCells(2)
  
  For Each itm In aralik
    If IsDate(itm) And itm >= krit(1, 1) And itm <= krit(2, 1) Then deger = deger + 1
  Next
  
  msgbox deger

End Sub
 
çok teşekkür ederim.

bu tarih aralığında kaç kayıt olduğunu saydırdık, bunun yanında miktar adetlerini de toplatmak istersem nasıl yaparız.

sizin çözüm şekliniz farklı olduğu için bu şekilde devam etmek istedim.

iyi çalışmalar
 
rica ederim.

N sütunundaki tarihler kriter aralığında ise S sütunundaki rakamlar mı toplanacak.

Kod:
Sub tarih_toplam()
  
  krit = Sheets("Rapor").Range("B5:B6") 'B5 küçük tarih, B6 büyük tarih
  
  With Sheets("Giriş")
    For i = 2 To .Range("N" & .Rows.Count).End(xlUp).Row
      If IsDate(.Range("N" & i)) And .Range("N" & i) >= krit(1, 1) And .Range("N" & i) <= krit(2, 1) Then toplam = toplam + .Range("S" & i)
    Next
  End With
  
  MsgBox toplam

End Sub
 
rica ederim. iyi pazarlar.
 
Geri
Üst