Untitled
unknown
vbscript
3 years ago
8.7 kB
6
Indexable
'loonbelastingroutine voor 2022. Alle bedragen in EURO's (omrekeningsfactor: 2,20371)
If Right$(V_JAAR, 2) = "22" Then
'LOONBELASTING-BEREKENING
i = fiscaal
If i <= 109350 Then
i = (Int(i / 54)) * 54
End If
If i > 109350 Then
L = i
i = 109350
Else
L = 0
End If
g = i
If IsNull(gebdatum) = True Then
geboorte = "31-12-2999"
leeftijd = 0
Else
geboorte = gebdatum
leeftijd = 2022 - Year(gebdatum)
End If
AOW = DLookup("[AOW_leeftijd]", "[AOW leeftijd]", "gebdatum_van<=#" & [geboorte] & "# and gebdatum_tot>=#" & [geboorte] & "#")
If leeftijd < AOW Then
If g < 0 Then
g = 0
End If
If g > 0 And g <= 35472 Then
A = 0
B = 37.07
c = 0
End If
If g > 35472 And g <= 69398 Then
A = 35472
B = 37.07
c = 13149
End If
If g > 69398 Then
A = 69398
B = 49.5
c = 25725
End If
End If
If Year(geboorte) <= 1945 Then
If g < 0 Then
g = 0
End If
If g > 0 And g <= 36409 Then
A = 0
B = 19.17
c = 0
End If
If g > 36409 And g <= 69398 Then
A = 36409
B = 37.07
c = 6979
End If
If g > 69398 Then
A = 69398
B = 49.5
c = 19208
End If
End If
If Year(geboorte) >= 1946 And leeftijd >= AOW Then
If g < 0 Then
g = 0
End If
If g > 0 And g <= 35472 Then
A = 0
B = 19.17
c = 0
End If
If g > 35472 And g <= 69398 Then
A = 35472
B = 37.07
c = 6799
End If
If g > 69398 Then
A = 69398
B = 49.5
c = 19375
End If
End If
'kortingen
If leeftijd < AOW Then
If TAR > 0 Then
loonheffingskorting = 2888
If g > 21317 Then
h = loonheffingskorting - Int(0.06007 * (g - 21317))
loonheffingskorting = h
End If
If g > 69398 Then
h = 0
loonheffingskorting = 0
End If
ouderenkorting = 0
Else
loonheffingskorting = 0
h = 0
ouderenkorting = 0
End If
Else
If TAR > 0 Then
loonheffingskorting = 1494
If g > 21317 Then
h = loonheffingskorting - Int(0.03106 * (g - 21317))
loonheffingskorting = h
End If
If g > 69398 Then
h = 0
loonheffingskorting = 0
End If
ouderenkorting = 1726
If g - 38464 < 0 Then
ouk = ouderenkorting
Else
ouk = ouderenkorting - Int(0.15 * (g - 38464))
ouderenkorting = ouk
End If
If ouk < 0 Then
ouk = 0
ouderenkorting = Round(ouk, 2)
End If
Else
loonheffingskorting = 0
ouderenkorting = 0
End If
End If
'arbeidskorting
If KLEUR = "GROEN" Then
arbeidskorting = 0
Else
If TAR > 0 Then
If leeftijd < AOW Then
ark01 = 0.04541
ark02 = 0.28461
ark03 = 0.0261
arkg1 = 10350
arkg2 = 22356
arkg3 = 36649
arkm1 = 470
arkm2 = 3887
arkm3 = 4260
arka1 = 0.0586
arkg4 = 109346
v1 = g - arkg1
If v1 < 0 Then
v1 = 0
End If
v2 = g - arkg2
If v2 < 0 Then
v2 = 0
End If
v3 = g - arkg3
If v3 < 0 Then
v3 = 0
End If
var1 = Round(ark01 * g, 5)
var2 = Round(ark02 * v1, 5)
var3 = Round(ark03 * v2, 5)
var4 = Round(arka1 * v3, 5)
If var1 > arkm1 Then
var1 = arkm1
End If
If var1 + var2 > arkm2 Then
var5 = arkm2
Else
var5 = var1 + var2
End If
If var5 + var3 > arkm3 Then
var6 = arkm3
Else
var6 = var5 + var3
End If
If g >= arkg4 Then
arbeidskorting = 0
Else
arbeidskorting = var6 - var4
If arbeidskorting > Int(arbeidskorting) Then
arbeidskorting = Int(arbeidskorting) + 1
End If
End If
End If
If leeftijd >= AOW Then
ark01 = 0.02348
ark02 = 0.14718
ark03 = 0.01349
arkg1 = 10350
arkg2 = 22356
arkg3 = 36649
arkm1 = 244
arkm2 = 2011
arkm3 = 2204
arka1 = 0.0303
arkg4 = 109346
v1 = g - arkg1
If v1 < 0 Then
v1 = 0
End If
v2 = g - arkg2
If v2 < 0 Then
v2 = 0
End If
v3 = g - arkg3
If v3 < 0 Then
v3 = 0
End If
var1 = Round(ark01 * g, 5)
var2 = Round(ark02 * v1, 5)
var3 = Round(ark03 * v2, 5)
var4 = Round(arka1 * v3, 5)
If var1 > arkm1 Then
var1 = arkm1
End If
If var1 + var2 > arkm2 Then
var5 = arkm2
Else
var5 = var1 + var2
End If
If var5 + var3 > arkm3 Then
var6 = arkm3
Else
var6 = var5 + var3
End If
If g >= arkg4 Then
arbeidskorting = 0
Else
arbeidskorting = var6 - var4
If arbeidskorting > Int(arbeidskorting) Then
arbeidskorting = Int(arbeidskorting) + 1
End If
End If
End If
End If
End If
End If
If Right$(V_JAAR, 4) < "2020" Then
'afrondingen en omrekeningen naar tijdvak
If (afbouw / 12) - (Int((afbouw / 12) * 100) / 100) > 0.05 Then
afbouw = ((Int((afbouw / 12) * 100) + 1) / 100) * 12
End If
End If
b_loonh = Int((g - A) * B / 100 + c) - (arbeidskorting + loonheffingskorting + V_korting + bonus + ouderenkorting) + afbouw
If Right$(V_JAAR, 2) = "02" Or Right$(V_JAAR, 2) = "03" Or Right$(V_JAAR, 2) = "04" Or Right$(V_JAAR, 2) = "05" Or Right$(V_JAAR, 2) = "06" Or Right$(V_JAAR, 2) = "07" Or Right$(V_JAAR, 2) = "08" Or Right$(V_JAAR, 2) = "09" Or Right$(V_JAAR, 2) = "10" Or Right$(V_JAAR, 2) = "11" Or Right$(V_JAAR, 2) = "12" Then
If L > 56430 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "13" Then
If L > 64530 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "14" Then
If L > 77760 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "15" Then
If L > 100710 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "16" Then
If L > 111780 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "17" Then
If L > 122040 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "18" Then
If L > 123390 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "19" Then
If L > 90990 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "20" Then
If L > 98820 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "21" Then
If L > 105840 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If Right$(V_JAAR, 2) = "22" Then
If L > 109350 Then
b_loonh = b_loonh + ((L - g) * B / 100)
End If
End If
If b_loonh < 0 Then
b_loonh = 0
End If
If periode = "MND" Then
b_loonh = b_loonh / 12
End If
If periode = "4WEEK" Then
b_loonh = b_loonh / 13
End If
If periode = "WEEK" Then
b_loonh = b_loonh / 52
End If
If periode = "DAG" Then
b_loonh = (Int((b_loonh / 260) * 100) / 100) * dg
End If
If Right$(V_JAAR, 2) > "15" Then
If b_loonh - Int(b_loonh * 100) / 100 >= 0.05 Then
b_loonh = Int(b_loonh * 100) / 100 + 0.01
End If
Else
b_loonh = Int(b_loonh * 100) / 100
End If
loonber = b_loonh
End Function
Editor is loading...