04-02-2009, 18:54
Merhaba Arkadaşlar,
Ücretliler için Gelir vergisini hesaplarken verginin dilimleri değişmektedir. Gelir vergisini eğer komutu ile hesaplamak son derece zor bende bir fonksiyon yazdığım bu fonksiyonu sizlerle paylaşmak istiyorum.
Fonksiyon kullanıcıdan 2 tane parametre istiyor.
1.parametre Kümülatif vergi matrahı
2.parametre verginin hesaplanacağı matrah
Saygılarımla..
Function Vergi(KMatrah As Double, VMatrah As Double) As Double
Vergi1 = 0
Vergi2 = 0
Vergi = 0
Sor = 0
TMatrah = KMatrah + VMatrah
If TMatrah < 8700 Then
Vergi1 = VMatrah * 15 / 100
ElseIf TMatrah >= 8700 And TMatrah < 22000 Then
Sor = (VMatrah - (TMatrah - 8700))
If Sor > 0 Then
Vergi1 = (TMatrah - 8700) * 20 / 100
Vergi2 = Sor * 15 / 100
Else:
Vergi1 = VMatrah * 20 / 100
Vergi2 = 0
End If
ElseIf TMatrah >= 22000 And TMatrah < 50000 Then
Sor = (VMatrah - (TMatrah - 22000))
If Sor > 0 Then
Vergi1 = (TMatrah - 22000) * 27 / 100
Vergi2 = Sor * 20 / 100
Else:
Vergi1 = VMatrah * 27 / 100
Vergi2 = 0
End If
ElseIf TMatrah >= 50000 Then
Sor = (VMatrah - (TMatrah - 50000))
If Sor > 0 Then
Vergi1 = (TMatrah - 50000) * 35 / 100
Vergi2 = Sor * 27 / 100
Else:
Vergi1 = VMatrah * 35 / 100
Vergi2 = 0
End If
End If
Vergi = Vergi1 + Vergi2
End Function
Ücretliler için Gelir vergisini hesaplarken verginin dilimleri değişmektedir. Gelir vergisini eğer komutu ile hesaplamak son derece zor bende bir fonksiyon yazdığım bu fonksiyonu sizlerle paylaşmak istiyorum.
Fonksiyon kullanıcıdan 2 tane parametre istiyor.
1.parametre Kümülatif vergi matrahı
2.parametre verginin hesaplanacağı matrah
Saygılarımla..
Function Vergi(KMatrah As Double, VMatrah As Double) As Double
Vergi1 = 0
Vergi2 = 0
Vergi = 0
Sor = 0
TMatrah = KMatrah + VMatrah
If TMatrah < 8700 Then
Vergi1 = VMatrah * 15 / 100
ElseIf TMatrah >= 8700 And TMatrah < 22000 Then
Sor = (VMatrah - (TMatrah - 8700))
If Sor > 0 Then
Vergi1 = (TMatrah - 8700) * 20 / 100
Vergi2 = Sor * 15 / 100
Else:
Vergi1 = VMatrah * 20 / 100
Vergi2 = 0
End If
ElseIf TMatrah >= 22000 And TMatrah < 50000 Then
Sor = (VMatrah - (TMatrah - 22000))
If Sor > 0 Then
Vergi1 = (TMatrah - 22000) * 27 / 100
Vergi2 = Sor * 20 / 100
Else:
Vergi1 = VMatrah * 27 / 100
Vergi2 = 0
End If
ElseIf TMatrah >= 50000 Then
Sor = (VMatrah - (TMatrah - 50000))
If Sor > 0 Then
Vergi1 = (TMatrah - 50000) * 35 / 100
Vergi2 = Sor * 27 / 100
Else:
Vergi1 = VMatrah * 35 / 100
Vergi2 = 0
End If
End If
Vergi = Vergi1 + Vergi2
End Function


