Formülü VBA ya uyarlama

BYSERTTAS

Altın Üye
Katılım
9 Ekim 2012
Mesajlar
136
Excel Vers. ve Dili
Excel Vers. ve Dili Ofis 2021 TR 32 Bit
Altın Üyelik Bitiş Tarihi
06-01-2025
Herkese Hayırlı Bayramlar Diliyorum.

Arkadaşlar Aşağıdaki Formülü Vba Kodu olarak Düzenlemek istiyorum. Yardımcı olursanız sevinirim.

Ekli Dosyada Excell Formülü ile yaptığım hesaplama var



TOPLA.ÇARPIM(--(P2>Parametreler!$E$2:$E$7);--(P2-Parametreler!$E$2:$E$7);--(Parametreler!$G$2:$G$7))-TOPLA.ÇARPIM(--(O2>Parametreler!$E$2:$E$7);--(O2-Parametreler!$E$2:$E$7);--(Parametreler!$G$2:$G$7))
 

Ekli dosyalar

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,642
Excel Vers. ve Dili
Pro Plus 2021
İyi bayramlar..
Fonksiyonu bir modül içerisine yerleştirin. Parametreleri A2:C6 aralığında resimdeki gibi düzenleyin.
Kod:
Function vergiHesapla(matrah#)
    Dim i, param
    param = Sheets("Parametreler").Range("A2:C6").Value
    For i = 1 To UBound(param)
        If matrah >= param(i, 1) Then
            vergiHesapla = Round(((matrah - param(i, 1)) * param(i, 3)) + param(i, 2), 2)
            Exit For
        End If
    Next i
End Function
251075251074
 

BYSERTTAS

Altın Üye
Katılım
9 Ekim 2012
Mesajlar
136
Excel Vers. ve Dili
Excel Vers. ve Dili Ofis 2021 TR 32 Bit
Altın Üyelik Bitiş Tarihi
06-01-2025
Hocam Emeğinize Sağlık Allah Razı olsun .
Fakat çalışmadı Dosyaya uygulayıp Dosyayı Yükleyebilirmisiniz.
 

BYSERTTAS

Altın Üye
Katılım
9 Ekim 2012
Mesajlar
136
Excel Vers. ve Dili
Excel Vers. ve Dili Ofis 2021 TR 32 Bit
Altın Üyelik Bitiş Tarihi
06-01-2025
Hocam meramımı izah edemedim sanırım.
Textbox1(Önceki Aylar Matrahı)=109000
Textbox2(Buayki Matrahı)=2.000,00
Textbox3(Toplam Matrahı)=111.000,00
hesaplam şoyle olacak 1000*,15=150+1000*,2=200
Textbox4=(Gelir Vergisi)=350,00 TL olamlı
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,642
Excel Vers. ve Dili
Pro Plus 2021
Ben userforma bakmadım bile. Sayfa üzerinde istiyorsunuz zannetmiştim. Vergi hesapla fonksiyonu bir modulun içerisinde olması gerekir.

Kod:
Private Sub TextBox2_Change()
    TextBox3.Text = Round(CDbl(TextBox1.Text) + CDbl(TextBox2.Text), 2)
End Sub
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox4.Text = vergiHesapla(CDbl(Replace(TextBox3.Value, ".", ""))) - _
                    vergiHesapla(CDbl(Replace(TextBox1.Value, ".", "")))
End Sub
 
Üst