• DİKKAT

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

CountIfs ile aynı sütunda birden çok koşul

Tarikkk_

Altın Üye
Katılım
5 Ocak 2020
Mesajlar
407
Excel Vers. ve Dili
Excel 2019
Merhabalar Aşağıdaki gibi bir makrom var ÖDEME-TAHSİLAT Sayfası D sütunu cariad a eşit ve B sütunu CARİ yazıyorsa,
buna bir koşul daha eklemek istiyorum. yine aynı sütun yani B sütununa "ÜRETİCİ " Koşulunu da eklemek istiyorum
Sheets("ÖDEME-TAHSİLAT").Range("B7:B1000"), "ÜRETİCİ") bu şekilde + , gibi şeylerle altına eklemeye çalıştım olmadı . yardımlarınız için şimdiden teşekkür ederim.


Yok = WorksheetFunction.CountIfs(Sheets(""ÖDEME-TAHSİLAT"").Range("D7:D1000"), CariAd) _
Sheets("ÖDEME-TAHSİLAT").Range("B7:B1000"), "CARİ")



If yok = 0 Then
HataMesajı ("HESABA AİT HERHANGİ BİR İŞLEM KAYDI BULUNMAMAKTADIR..!!")
Exit Sub
End If
 
Merhaba,

Deneyiniz.
Kod:
Set So = Sheets("ÖDEME-TAHSİLAT")
Set Wf = WorksheetFunction

yok = Wf.Sum(Wf.CountIfs(So.Range("D7:D1000"), CariAd, So.Range("B7:B1000"), Array("CARİ", "ÜRETİCİ")))

If yok = 0 Then
HataMesajı ("HESABA AİT HERHANGİ BİR İŞLEM KAYDI BULUNMAMAKTADIR..!!")
Exit Sub
End If
 
Merhaba,

Deneyiniz.
Kod:
Set So = Sheets("ÖDEME-TAHSİLAT")
Set Wf = WorksheetFunction

yok = Wf.Sum(Wf.CountIfs(So.Range("D7:D1000"), CariAd, So.Range("B7:B1000"), Array("CARİ", "ÜRETİCİ")))

If yok = 0 Then
HataMesajı ("HESABA AİT HERHANGİ BİR İŞLEM KAYDI BULUNMAMAKTADIR..!!")
Exit Sub
End If

hocam ilginizden dolayı çok teşekkür ederim kod yazmış olduğunuz şekilde çalışıyor fakat aşağıdaki şekilde niye çalıştıramadığımı
merak ettim

normalde bu şekildede çalışması gerekmezmi burada yanlış olan şey ne acaba

yok = WorksheetFunction.CountIfs(Sheets("ÖDEME-TAHSİLAT").Range("D7:D1000"), CariAd, _
Sheets("ÖDEME-TAHSİLAT").Range("B7:B1000"), Array("CARİ", "ÜRETİCİ")))


yada altaki değişkenleri tanımlamadığımız için olabilirmi

Set So = Sheets("ÖDEME-TAHSİLAT")
Set Wf = WorksheetFunction
 
Array kullanıldığı için, WorksheetFunction.CountIfs dan önce Sum eklemesi yapmıştım.

WorksheetFunction.Sum(WorksheetFunction.CountIfs...... gibi olmalı.
 
Array kullanıldığı için, WorksheetFunction.CountIfs dan önce Sum eklemesi yapmıştım.

WorksheetFunction.Sum(WorksheetFunction.CountIfs...... gibi olmalı.

Hocam malesef aşağıdaki şekilde hata alıyorum bir yerde yanlış yapıyorum sanırım




Kod:
    yok = WorksheetFunction.Sum(WorksheetFunction.CountIfs(Sheets("ÖDEME-TAHSİLAT").Range("C7:C1000"), CariAd, _
    Sheets("ÖDEME-TAHSİLAT").Range("B7:B1000"), Array("CARİ", "ÜRETİCİ")))
 
Nedenini tam olarak anlayamadım, aşağıdaki gibi deneyin.
Kod:
yok = WorksheetFunction.Sum(Application.CountIfs(Sheets("ÖDEME-TAHSİLAT").Range("D7:D1000"), cariAd, _
    Sheets("ÖDEME-TAHSİLAT").Range("B7:B1000"), Array("CARİ", "ÜRETİCİ")))
 
Nedenini tam olarak anlayamadım, aşağıdaki gibi deneyin.
Kod:
yok = WorksheetFunction.Sum(Application.CountIfs(Sheets("ÖDEME-TAHSİLAT").Range("D7:D1000"), cariAd, _
    Sheets("ÖDEME-TAHSİLAT").Range("B7:B1000"), Array("CARİ", "ÜRETİCİ")))

hocam malesef doğru sonucu vermiyor yine aşağıdaki eski yöntemle kullanacaz sanırım :)

SonSatır = Sheets("ÖDEME-TAHSİLAT").Cells(Rows.Count, "C").End(3).Row

yok = yok + WorksheetFunction.CountIfs(Sheets("ÖDEME-TAHSİLAT").Range("C7:C" & SonSatır), CariAd, _
Sheets("ÖDEME-TAHSİLAT").Range("B7:B" & SonSatır), "CARİ")

yok = yok + WorksheetFunction.CountIfs(Sheets("ÖDEME-TAHSİLAT").Range("C7:C" & SonSatır), CariAd, _
Sheets("ÖDEME-TAHSİLAT").Range("B7:B" & SonSatır), "ÜRETİCİ")
 
Geri
Üst