Arkadaşlar aşağıdaki kod aylık gecikme zammı için yazılmış.
=IIf(DateDiff("m";[SON ÖDEME TARİHİ];Date())>0;IIf([kalan]>0;[kalan]*0,5))
Fakat hesaplamayı şu şekilde yapıyor. SON ÖDEME TARİHİ şu andaki tarihden geride ise KALAN hanesindeki değeri 0,5 ile çarpıyor. Ama benim yapmaya çalıştığım ise şu; KALAN hanesindeki değeri; SON ÖDEME TARİHİ'nden sonraki her ay için 0,5 ile çarpıp bunu toplayarak ( katlanarak ) GECİKME ZAMMI hanesine yazsın istiyorum.
Herkese iyi çalışmalar..
Sayın Mehmet Akif;
Ekte gönderdiğim formu ve kodlarını lütfen inceler misiniz? Bu gayet açık bir şekilde kodlama ve mantığını yazarak yapmaya çalıştım. Daha kısa kod olarak ta yazılabilir. Saygılar, kolay gelsin.
sayın Hayri16 öncelikle ilgilnize teşekkür ediyorum.
Eklediğim uygulamaya bakarsanız ne yapmak istediğimi daha iyi anlarsınız. Ben tam anlatamamış olabilirim. Sizin uygulananız mantıklı ama bir butona bağlı değilde. hareketli olmalı.
Sayın Mehmet Akif;
Buton koymadan yapmanın benim bildiğim iki yolu var.
Birincisi metin kutusunun denetim kaynağına hesaplamayı formüle ederk yazmak.
İkincisi ise metin kutusunun olaylarından uygun olanı seçip onun koduna yazmak.
Örneğin bir metin kutusunun değiştiğinde olayına "Olay Yordamını" seçip, kod sayfasında
Private Sub Metin_Change()
End Sub
yordamı arasına istediğimizi yaptıran kodları yazarız.
Bu arada programla ilgili bir kaç sorum var.
1- Toplam tahakkuku tüm vergi türlerine göre alıyor. Ama toplam ödeme sadece bir vergi türüne göre. Burada hesaplama yapılacaksa toplam tahakkukta sadece o vergi türüne göre yapılmalı.
2- Aylık gecikme faizi 0.5 yani % 50 demek. Bu rakam biraz abartı değil mi?
İyi çalışmalar.
Sayın Hayri16 ;
İlk verdiğim kodu;=IIf(DateDiff("m";[SON ÖDEME TARİHİ];Date())>0;IIf([kalan]>0;[kalan]*0,5))
GECİKME ZAMMI hanesinin denetim kaynağına yazacağım. Ama burada sorun şu içinde bulunulan tarih yani şimdiki zaman SON ÖDEME TARİHİ'nden bir ay ilerde ise bu hesaplamayı yapıyor. buraya kadar normal. Ama SON ÖDEME TARİHİ üzerinden 2 ay geçmiş ise yine aynı sonucu veriyor. Benim istediğim her geçen ayı eklesin. Yani her ay için 0,5 ile çarpıp bunları toplayarak devam etsin istiyorm.
1-TOPLAM ÖDENEN de aynı şekilde yukardan aşağıya sütunun toplamı olmalı. burada haklısınız. Dikkat etmemişim galiba.
2-gecikme zammı 0,5 olarak alınmayaca bu formalite.
Oradaki rakamı ben sallamasyon olarak 0.5 demiştim
=IIf(DateDiff("m";[SON ÖDEME TARİHİ];Date())>0;IIf([kalan]>0;DateDiff("m";[SON ÖDEME TARİHİ];Date())*0,5;0);0)