Değerli forumdaşlar brüt ve net ücret hesaplama ile ilgili elimde bir makro var bu makro tavan ücretde hata veriyor aşağıdaki kodlara bakarak yardımcı olabilirmisiniz.
"Brüt tutar asgari ücretten az olamaz " yazısı yok olmuyor nedendir anlamadım, tavan ücreti aşıyorsa tavandan alması gerekiyor.
Function nucret09(bucret, kvm)
If bucret < 666 Then
nucret09 = "Brüt ücret asgari ücretten aşağı olamaz."
Exit Function
ElseIf bucret <= 4329 Then
sskprim = bucret * 14 / 100
Else
sskprim = 4329 * 14 / 100
End If
isprim = sskprim / 14
gvergi = kes09(kvm + bucret - sskprim - isprim) - kes09(kvm)
dvergi = bucret * 6 / 1000
nucret09 = bucret - sskprim - isprim - gvergi - dvergi
End Function
Function bucret09(net_ucret)
On Error GoTo hata:
a = net_ucret * 2
For i = 1 To 100
b = nucret09(a, 0)
If b = net_ucret Then
bucret09 = a
Else
a = a - (b - net_ucret)
End If
Next i
bucret09 = a
GoTo 20
hata: bucret09 = "Brüt tutar asgari ücretten az olamaz."
20
End Function
Function kes09(matrah)
If matrah < 8700# Then
kes09 = matrah * 0.15
Else
If matrah < 22000# Then
kes09 = 1305# + (matrah - 7500#) * 0.2
Else
If matrah < 50000# Then
kes09 = 3965# + (matrah - 22000#) * 0.27
Else
If matrah > 50000# Then
kes09 = 11525# + (matrah - 50000#) * 0.35
End If
End If
End If
End If
End Function
"Brüt tutar asgari ücretten az olamaz " yazısı yok olmuyor nedendir anlamadım, tavan ücreti aşıyorsa tavandan alması gerekiyor.
Function nucret09(bucret, kvm)
If bucret < 666 Then
nucret09 = "Brüt ücret asgari ücretten aşağı olamaz."
Exit Function
ElseIf bucret <= 4329 Then
sskprim = bucret * 14 / 100
Else
sskprim = 4329 * 14 / 100
End If
isprim = sskprim / 14
gvergi = kes09(kvm + bucret - sskprim - isprim) - kes09(kvm)
dvergi = bucret * 6 / 1000
nucret09 = bucret - sskprim - isprim - gvergi - dvergi
End Function
Function bucret09(net_ucret)
On Error GoTo hata:
a = net_ucret * 2
For i = 1 To 100
b = nucret09(a, 0)
If b = net_ucret Then
bucret09 = a
Else
a = a - (b - net_ucret)
End If
Next i
bucret09 = a
GoTo 20
hata: bucret09 = "Brüt tutar asgari ücretten az olamaz."
20
End Function
Function kes09(matrah)
If matrah < 8700# Then
kes09 = matrah * 0.15
Else
If matrah < 22000# Then
kes09 = 1305# + (matrah - 7500#) * 0.2
Else
If matrah < 50000# Then
kes09 = 3965# + (matrah - 22000#) * 0.27
Else
If matrah > 50000# Then
kes09 = 11525# + (matrah - 50000#) * 0.35
End If
End If
End If
End If
End Function
