denese
Altın Üye
- Katılım
- 17 Mart 2011
- Mesajlar
- 441
- Excel Vers. ve Dili
- Office 2019
- Altın Üyelik Bitiş Tarihi
- 02-03-2026
Merhaba,
Ekte, kullanıcı tanımlı fonksiyon ile netten brüte hesaplama yapılabilen bir çalışma yer alıyor. Çalışmaya bu forumdan erişmiştim uzun zaman önce. Forumda aradım ama kaynağı bulamadım.. Yapmak istediğim şey şu; Gelir vergisine %40' lık yeni bir vergi dilimi daha eklenmesi nedeniyle, aşağıdaki GV hesaplama kodunu revize etmek istiyorum.
Güncel vergi dilimleri ve oranları aşağıdaki gibi olacak.
Dilim1 = 0
Dilim2 = 22000
Dilim3 = 49000
Dilim4 = 180000
Dilim5 = 600000
Oran1 = 15
Oran2 = 20
Oran3 = 27
Oran4 = 35
Oran5 = 40
Çalışma ekte yer alıyor. Yardımcı olabilir misiniz.
Saygılarımla.
Ekte, kullanıcı tanımlı fonksiyon ile netten brüte hesaplama yapılabilen bir çalışma yer alıyor. Çalışmaya bu forumdan erişmiştim uzun zaman önce. Forumda aradım ama kaynağı bulamadım.. Yapmak istediğim şey şu; Gelir vergisine %40' lık yeni bir vergi dilimi daha eklenmesi nedeniyle, aşağıdaki GV hesaplama kodunu revize etmek istiyorum.
Kod:
Function GV(KMatrah As Double, VMatrah As Double) As Double
Dim Dilim1 As Double, Dilim2 As Double, Dilim3 As Double, Dilim4 As Double
Dim Oran1 As Integer, Oran2 As Integer, Oran3 As Integer, Oran4 As Integer
Dim GV1 As Double, GV2 As Double, GV3 As Double, GV4 As Double
Dilim1 = 0
Dilim2 = 14800
Dilim3 = 34000
Dilim4 = 120000
Oran1 = 15
Oran2 = 20
Oran3 = 27
Oran4 = 35
TMatrah = KMatrah + VMatrah
If TMatrah <= Dilim2 Then
GV1 = VMatrah * Oran1 / 100
End If
If TMatrah >= Dilim2 And TMatrah < Dilim3 Then
Sor1 = (VMatrah - (TMatrah - Dilim2))
If Sor1 > 0 Then
GV1 = (TMatrah - Dilim2) * Oran2 / 100
GV2 = Sor1 * Oran1 / 100
Else:
GV1 = VMatrah * Oran2 / 100
GV2 = 0
End If
End If
If TMatrah >= Dilim3 And TMatrah < Dilim4 And KMatrah < Dilim2 Then
GV1 = (Dilim2 - KMatrah) * Oran1 / 100
GV2 = (Dilim3 - Dilim2) * Oran2 / 100
GV3 = ((TMatrah - Dilim3)) * Oran3 / 100
GoTo son
End If
If TMatrah >= Dilim3 And TMatrah < Dilim4 And KMatrah > Dilim2 Then
Sor2 = (VMatrah - (TMatrah - Dilim3))
If Sor2 > 0 Then
GV1 = (TMatrah - Dilim3) * Oran3 / 100
GV2 = Sor2 * Oran2 / 100
Else:
GV1 = VMatrah * Oran3 / 100
GV2 = 0
End If
End If
If TMatrah >= Dilim4 And KMatrah < Dilim2 Then
GV1 = (Dilim2 - KMatrah) * Oran1 / 100
GV2 = (Dilim3 - Dilim2) * Oran2 / 100
GV3 = ((Dilim4 - Dilim3)) * Oran3 / 100
GV4 = ((TMatrah - Dilim4)) * Oran4 / 100
GoTo son
End If
If TMatrah >= Dilim4 And KMatrah < Dilim3 Then
GV1 = 0
GV2 = (Dilim3 - KMatrah) * Oran2 / 100
GV3 = ((Dilim4 - Dilim3)) * Oran3 / 100
GV4 = ((TMatrah - Dilim4)) * Oran4 / 100
GoTo son
End If
If TMatrah >= Dilim4 Then
Sor = (VMatrah - (TMatrah - Dilim4))
If Sor > 0 Then
GV1 = (TMatrah - Dilim4) * Oran4 / 100
GV2 = Sor * Oran3 / 100
Else:
GV1 = VMatrah * Oran4 / 100
GV2 = 0
End If
End If
son:
GV = GV1 + GV2 + GV3 + GV4
End Function
Dilim1 = 0
Dilim2 = 22000
Dilim3 = 49000
Dilim4 = 180000
Dilim5 = 600000
Oran1 = 15
Oran2 = 20
Oran3 = 27
Oran4 = 35
Oran5 = 40
Çalışma ekte yer alıyor. Yardımcı olabilir misiniz.
Saygılarımla.
Ekli dosyalar
-
23.4 KB Görüntüleme: 20