Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
直接改了?不太合适吧,我觉得老的函数也应该保留啊,至少在1年内老算法经常会用到,例如算以前月份的工资和税,或者进行新老税法比较时.
呵呵,老的已经被新的替换了,会不来了。
你可以在全局代码粘贴下面的代码,不过这个计算规则是新版的,你按旧版计算规则改过来,以后即可用InTax2函数计算旧的个人所得税,用法和InTax一样:
Public Function InTax2(ByVal x As Double) As Double
Dim y As Double
If x > 80000 Then
y = x * 0.45 - 13505
ElseIf x > 55000 Then
y = x * 0.35 - 5505
ElseIf x > 35000 Then
y = x * 0.3 - 2755
ElseIf x > 9000 Then
y = x * 0.25 - 1005
ElseIf x > 4500 Then
y = x * 0.2 - 555
ElseIf x > 1500 Then
y = x * 0.1 - 105
ElseIf x > 0 Then
y = x * 0.03
ElseIf x <= 0 Then
y = 0
End If
Return Math.Round(y, 2)
End Function
呵呵,老的已经被新的替换了,会不来了。
你可以在全局代码粘贴下面的代码,不过这个计算规则是新版的,你按旧版计算规则改过来,以后即可用InTax2函数计算旧的个人所得税,用法和InTax一样:
Public Function InTax2(ByVal x As Double) As Double
Dim y As Double
If x > 80000 Then
y = x * 0.45 - 13505
ElseIf x > 55000 Then
y = x * 0.35 - 5505
ElseIf x > 35000 Then
y = x * 0.3 - 2755
ElseIf x > 9000 Then
y = x * 0.25 - 1005
ElseIf x > 4500 Then
y = x * 0.2 - 555
ElseIf x > 1500 Then
y = x * 0.1 - 105
ElseIf x > 0 Then
y = x * 0.03
ElseIf x <= 0 Then
y = 0
End If
Return Math.Round(y, 2)
End Function
建议再升级时,把InTax2函数也加上,至少在最近几个月内,新老函数都会经常用到.
不用的,我已经找出旧版的计算代码了,直接将下面的代码粘贴在全局代码中,即可用InTax2计算旧版个人所得税了,一样很方便的:
Public Function InTax2(ByVal x As Double) As Double
Dim y As Double
If x > 100000 Then
y = x * 0.45 - 15375
ElseIf x > 80000 Then
y = x * 0.4 - 10375
ElseIf x > 60000 Then
y = x * 0.35 - 6375
ElseIf x > 40000 Then
y = x * 0.3 - 3375
ElseIf x > 20000 Then
y = x * 0.25 - 1375
ElseIf x > 5000 Then
y = x * 0.2 - 375
ElseIf x > 2000 Then
y = x * 0.15 - 125
ElseIf x > 500 Then
y = x * 0.1 - 25
ElseIf x > 0 Then
y = x * 0.05
ElseIf x <= 0 Then
y = 0
End If
Return Math.Round(y, 2)
End Function
我试着用新版测试了一下个人所得税函数,发现麻烦大了,软件中所有以前的工资数据,只要一重算,所有的个人所得税全部按新税法计算了,全部变错了!难道贺老师让我以前的工资全部按新税法缴个人所得税?
可见,税法变了,贺老师直接修改了InTax函数的计算方法,是一个很欠考虑的、不妥当的决定,这样会造成软件中以前月份的工资数据全部计算出错误的个人所得税结果!正确的做法是,老函数不能轻易的变动,而应该新增一个函数按新税法计算!
其实没有办法两全的,如果我不改这个函数,那么有人会说:麻烦了,现在算出来的个人所得税全部错了,难道我需要重新改代码? 发布后的程序怎么改? foxtable官方为什么不直接按照新税法调整intax函数,偏偏要重新出一个函数,害我要重新修改代码?
其实没有办法两全的,如果我不改这个函数,那么有人会说:麻烦了,现在算出来的个人所得税全部错了,难道我需要重新改代码? 发布后的程序怎么改? foxtable官方为什么不直接按照新税法调整intax函数,偏偏要重新出一个函数,害我要重新修改代码?
如果狐表是现在刚出来,以前没人使用,用新的公式还说得过去。但关键是现在有很多老用户一直在使用,而且计算以前工资的时候也的确应该用老公式,现在税法改了,比较合理的办法是新增一个函数,而不应该把正常使用的老函数给修改了。
难道税法一修改,以前的公式就不需要了?现在9月份还未到,难道计算工资就开始使用新公式了?(是不是太超前了)不管贺老师怎么认为,我个人认为这是一个失误,结果是给老用户造成了不必要的麻烦。
当然,这也不算什么解决不了的大问题,如果贺老师坚持不再修改狐表,那么作为老用户,我解决的办法有两个:(1)这个项目的程序不再升级狐表,一直使用老版本;(2)升级后修改代码,所有使用此函数的代码全部修改一遍。