- Katılım
- 31 Aralık 2009
- Mesajlar
- 1,105
- Excel Vers. ve Dili
- excel 2007 türkçe
Excel Vers. ve Dili Ofis 2003
Selamlar
daha önce sayın Mancubus sayesinde çok eğersay formülünün ktf sini öğrenmiştim
şimdi
çok eğersay formülünü çoketoplaya uyarlamaya çalıştım ama sonu hatalı değer döndürüyor
macroyu incelememiz mümkün mü?
daha önce sayın Mancubus sayesinde çok eğersay formülünün ktf sini öğrenmiştim
tekrar merhaba.
konu farklı bir alan için bana da lazım oldu. "dışsal" yardım :redface: ile düzeltilmiş daha işlevsel (ve çok daha kaliteli) ktf aşağıdaki gibidir.
çok aralık toplam fonksiyonu (uyarlama bana ait :redface: ) da eklenmiştir.
Kod:Function esay_çok_aralık(ölçüt, ParamArray aralık()) Dim vSonuç As Long For i = LBound(aralık) To UBound(aralık) vSonuç = vSonuç + Application.CountIf(aralık(i), ölçüt) Next i esay_çok_aralık = vSonuç End Function
örnek
=esay_çok_aralık(">"&E1;A1:C10;F1:F10;H1:I10)
tamnımlanan aralıklarda E1 hücresindeki değerden büyük olanların sayısı
Kod:Function etopla_çok_aralık(ölçüt, ParamArray aralık()) Dim vSonuç As Long For i = LBound(aralık) To UBound(aralık) vSonuç = vSonuç + Application.SumIf(aralık(i), ölçüt, aralık(i)) Next i etopla_çok_aralık = vSonuç End Function
örnek
=etopla_çok_aralık(E1;A1:C10;F1:F10;H1:I10)
tamnımlanan aralıklarda E1 hücresindeki değere eşit olanların toplamı
şimdi
çok eğersay formülünü çoketoplaya uyarlamaya çalıştım ama sonu hatalı değer döndürüyor
macroyu incelememiz mümkün mü?
Function ÇOKetopla_çok_aralık3(toplam_aralığı, ölçüt_aralığı1, ölçüt1, ölçüt_aralığı2, ParamArray ölçüt())
Dim vSonuç As Long
If Range("a2") = "" Then vSonuç = "" Else
For i = LBound(ölçüt) To UBound(ölçüt)
vSonuç = vSonuç + Application.SumIf(toplam_aralığı, ölçüt_aralığı1, ölçüt1, ölçüt_aralığı2, ölçüt(i))
Next i
ÇOKetopla_çok_aralık3= vSonuç
End Function
Ekli dosyalar
Son düzenleme:
