• DİKKAT

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

Topla.çarpım formülü ile Yasal Faiz Hesabı

ordulu82

Altın Üye
Katılım
24 Mart 2006
Mesajlar
215
selamlar ekteki dosyada topla.çarpım formülü ile bir faiz hesaplama formülü hazırlamak istiyorum.
Formül çalışmadı acaba nerde hata yapıyorum. Malum faiz oranları belli tarihler arasında değişiyor. belirttiğim iki tarih arasında faiz hesaplanmasını istiyorum. Yardımcı olabilirseniz çok sevinirim.
 

Ekli dosyalar

Merhaba, ordulu82,
Aşağıdaki formülü kullanabilirsiniz.
İyi Günler dilerim.

= TOPLA(ÇARPIM((G1<=B2:B5)*(G2>=A2:A5)*(C2:C5)*(G3)))
 
Merhaba , ordulu82,
Vermiş olduğunuz faiz oranını aylık olarak algılıyorum.
Tarihler arası 297 gün buna göre formül yazılmıştır.
İstediğinizi tam olarak açıklarsanız cevap almanız daha kolay olacaktır.
İyi Günler dilerim.
 
Merhaba , ordulu82,
Vermiş olduğunuz faiz oranını aylık olarak algılıyorum.
Tarihler arası 297 gün buna göre formül yazılmıştır.
İstediğinizi tam olarak açıklarsanız cevap almanız daha kolay olacaktır.
İyi Günler dilerim.
Maalesef o ayrıntıyı söylemeyi atlamışım. belirttiğim faiz oranları yıllık faiz oranlardır.
 
Bir modüle aşağıdaki kodları ekle

Kod:
Function FaizToplamı(faizBaslangic As Date, faizBitis As Date, anapara As Double, _
                     donemBaslangic As Range, donemBitis As Range, faizOranlari As Range) As Double
    Dim i As Long
    Dim toplamFaiz As Double
    Dim ortakBaslangic As Date
    Dim ortakBitis As Date
    Dim gunSayisi As Long
    Dim oran As Double
    
    toplamFaiz = 0
    
    For i = 1 To donemBaslangic.Rows.Count
        If IsDate(donemBaslangic.Cells(i, 1).Value) And IsDate(donemBitis.Cells(i, 1).Value) Then
            ortakBaslangic = Application.WorksheetFunction.Max(faizBaslangic, donemBaslangic.Cells(i, 1).Value)
            ortakBitis = Application.WorksheetFunction.Min(faizBitis, donemBitis.Cells(i, 1).Value)
            
            If ortakBitis > ortakBaslangic Then
                gunSayisi = ortakBitis - ortakBaslangic
                oran = faizOranlari.Cells(i, 1).Value
                toplamFaiz = toplamFaiz + (anapara * oran * gunSayisi / 365)
            End If
        End If
    Next i
    
    FaizToplamı = anapara + toplamFaiz
End Function


G5 hücresine

Kod:
=FaizToplamı(G1;G2;G3;A2:A5;B2:B5;C2:C5)

yazıp kontrol eder misin.
 
Formülle de

Kod:
=G3+TOPLA(BYROW(A2:A5;LAMBDA(i;MAK(0;MİN(İNDİS(B2:B5; SATIR(i)-SATIR(A2)+1); G2)-MAK(İNDİS(A2:A5;SATIR(i)-SATIR(A2)+1); G1))*(G3*İNDİS(C2:C5;SATIR(i)-SATIR(A2)+1)/365))))

Eğer G3 hesaba katılmayacaksa onu silersiniz.
 
Geri
Üst