这是一个用VB实现的收入调节税的函数 ,有可能有人需要所以就发上来了。
Function iiatax(x,y)
Dim basicnum As Integer
Dim downnum As Variant, upnum As Variant, ratenum As Variant, deductnum As Variant
If y = 0 Then
basicnum = 1600 '定义中国公民个税起征点
ElseIf y = 1 Then
basicnum = 4800 '定义外国公民个税起征点
Else: basicnum = Null
End If
downnum = Array(0, 500, 2000, 5000, 20000, 40000, 60000, 80000, 100000) '定义累进区间下限
upnum = Array(500, 2000, 5000, 20000, 40000, 60000, 80000, 100000, 100000000) '定义累进区间上限
ratenum = Array(0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45) '定义累进税率
deductnum = Array(0, 25, 125, 375, 1375, 3375, 6375, 10375, 15375) '定义累进速算扣除数
If IsNumeric(x) = False Then
MsgBox ("请检查计税工资是否为数值!")
End If
If x < 0 Then
MsgBox ("计税工资为负,重新输入!")
End If
If x >= 0 And x < basicnum Then
iiatax = 0
End If
For i = 0 To UBound(downnum)
If x - basicnum > downnum(i) And x - basicnum <= upnum(i) Then
iiatax = Round( ( x - basicnum ) * ratenum(i) - deductnum(i), 2)
End If
Next i
End Function
1、iiatax(参数1,参数 2 ),参数 1 引用计税工资,参数 2 用“ 0 ” 表示中国公民的所得税起征点,用“ 1 ” 表示外国公民的起征点。
2、使用方法,如“ B2=iiatax(A2,0) ”,或者“ B2=iiatax(6500,1) ”。