1、首先我们打开一个工作样表,这是一份工资表。
2、打开vba编辑器,在代码框中,输入以下代艨位雅剖码。Function 个人所得税(curP As Curre荏鱿胫协ncy) curP = curP - 1600 '1600为免征额 If curP > 0 Then Select Case curP Case Is <= 500 suo = curP * 0.05 Case Is <= 2000 suo = (curP - 500) * 0.1 + 25 Case Is <= 5000 suo = (curP - 2000) * 0.15 + 125 Case Is <= 20000 suo = (curP - 5000) * 0.2 + 375 Case Is <= 40000 suo = (curP - 20000) * 0.25 + 1375 Case Is < 60000 suo = (curP - 40000) * 0.3 + 3375 Case Is < 80000 suo = (curP - 60000) * 0.35 + 6375 Case Is < 100000 suo = (curP - 80000) * 0.4 + 10375 Case Else suo = (curP - 100000) * 0.45 + 15375 End Select 个人所得税 = suo Else 个人所得税 = 0 End IfEnd Function
3、新建一个过程sub,代码如下。Su水瑞侮瑜b 计算()For i = 6 To 13 Sheets(1).Ce造婷用痃lls(i, 15).Value = 个人所得税(Sheets(1).Cells(i, 14).Value)NextEnd Sub
4、代码是调用个人所得税函数,计算N6-N13单元格工资的所得税额,并将结果写入O6-O13单元格中。
5、我们在5月工资也就是sheet1工作薄中插入一个控件按钮,并将其关联到“计算”过程。如果你是其他格式的表格,只需要修改步骤三中的表格数据位置即可正常使用。
6、以后有需要的时候,只要将数据输入对应的单元格内,然后点击按钮就可以正确的得到了个人所得税的结果了。当然,你也可以自行调用vba运行函数,效果是一样的。