vba个税计算代码(vba个税计算代码表)

前沿拓展:

vba个税计算代码

你想怎么算我都不知道,怎么写况啊? 那么你想怎么用VBA编程啊? 是固定还是自定义函数
Function tax(xVuale As Double, MVuale As Double) As DoubleDim Lv As Double, Taxra七亲好条配te As Long, yVuale As DoubleyVuale = xVuale – MVualeSelect Case yVuale Case Is < 500 Lv = 0.05 Taxrate = 0 Case I持充烈财攻重s < 2000 Lv = 0.1 Taxrate = 25 Case Is < 5000 Lv = 0.15 Taxrate = 125 Case Is < 20000 Lv = 0.2 Taxrat请衡果己资型传举e = 375 Case 乙地冲批这怎西负家粒Is < 40000 Lv = 0.25 Taxrate = 1375 Case Is < 60000 Lv = 0.3 Taxrate = 3375 Case Is < 8需织探境支调边0000 Lv = 0.35 Taxrate = 6375 Case Is < 100000 Lv = 0.4 Taxrate = 10375 Case Is >= 100000 Lv = 0.45 Taxrate = 15375End Selecttax = yVuale * Lv – Taxra**d Function</p>


近日大家都在关注个人所得税起征点提高的问题,这是一项惠民的政策。这里我将从函数的角度教给大家计算一下,自己能够得到多少实惠。

此项政策的全文不再拷贝了,但下面税率变化的一段要注意,原文如下:

(三)优化调整税率结构。

一是综合所得税率。以现行工资、薪金所得税率(3%至45%的7级超额累进税率)为基础,将按月计算应纳税所得额调整为按年计算,并优化调整部分税率的级距。具体是:扩大3%、10%、20%三档低税率的级距,3%税率的级距扩大一倍,现行税率为10%的部分所得的税率降为3%;大幅扩大10%税率的级距,现行税率为20%的所得,以及现行税率为25%的部分所得的税率降为10%;现行税率为25%的部分所得的税率降为20%;相应缩小25%税率的级距,30%、35%、45%这三档较高税率的级距保持不变。(第三条、第十六条)

对于上段文字我们给予解读:

vba个税计算代码(vba个税计算代码表)

1 3%税率的级距扩大一倍,现行税率为10%的部分所得的税率降为3%;则上述级别2的税率将将为3%

2 大幅扩大10%税率的级距,现行税率为20%的所得,以及现行税率为25%的部分所得的税率降为10%;则上述税率中第**别的将为10%,第四级别部分将将为10%

3 现行税率为25%的部分所得的税率降为20%;则第四级别中部分将调整为20%

4 应缩小25%税率的级距,30%、35%、45%这三档较高税率的级距保持不变。则第四级别的25%还有部分保留,第五第六第七级别保持不变

所以我们有了新的税率:

vba个税计算代码(vba个税计算代码表)

好了,我们将根据新的税率计算一下调整后的个税情况:

vba个税计算代码(vba个税计算代码表)

上面的E13单元格中是调整前的个税;公式如下:

=IF(D13<=1500,0.03*D13,IF(D13<=4500,45+(D13-1500)*0.1,IF(D13<=9000,45+300+(D13-4500)*0.2,IF(D13<=35000,45+300+900+(D13-9000)*0.25,IF(D13<=55000,45+300+900+26000*0.25+(D13-350000)*0.3,IF(D13<=80000,45+300+900+26000*0.25+20000*0.3+(D13-55000)*0.35,45+300+900+26000*0.25+20000*0.3+(80000-55000)*0.35+(D13-80000)*0.45))))))

这是很繁琐的IF多重嵌套公式,有兴趣的朋友可以自己研究一下,还可以用下面的简单公式:

=ROUND(MAX((D13)*5%*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701},0),2)

这里仅对后面的公式讲解:

(D13)是个税的应纳税所得额,

{0.6,2,4,5,6,7,9}是个数组。

0.05*{0.6,2,4,5,6,7,9}={0.03,0.1,0.2,0.25,0.3,0.35,0.45} 是个税的税率公式。

5*{0,21,111,201,551,1101,2701}={0,105,555 ,1005,2755,5505,13505}是各级别的个税扣除额。

(D13)*5%*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701} 是纳税额*各级个税税率-应扣额后的数字,如果税率对应的级别<=纳税额时,税率越大税额越大,符合所缴税款和所得相匹配的原理。如果税率对应的级别>纳税额时,税率越大税额越小,因为扣减了超额的扣除数,这样保证了,缴税数组里最大的那个一定是最符合相应税率的。

因为存在了纳税额<0的情况,即工资不满3500的,为避免出现税额为0,就在(D13)*5%*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701}后添了一个”,0″的值,保证计算税额的公式MAX((A1-3500)*5%*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701},0)必定有个0值,在用MAX求最大时,出现的税额一定是符合税率的,并最小的数是0,不会出现负数。外套ROUND函数,就是4舍5入到2位小数的意思了。

在E12单元格中录入下面的公式:

=IF(D12<=4500,0.03*D12,IF(D12<=9000,135+(D12-4500)*0.1,”未定”)) 这个公式只是嵌套到纳税金额在9000以下的情况,之后的情况由于还没有查到相关的范围资料,只能是先未定了。

有了上述公式,你可以算算自己的个税情况了,赶快行动吧!

拓展知识:

vba个税计算代码

  从9月1日起,个税起征点将调高为3500元,由于采用分级累进税率,计算比较烦琐,如果用EXCEL做一个“计算器”就会方便的多了。大家可以用这个计算器算一下,看在新标准中,自己应当缴纳多少个人所得税。

步骤/方法

准备一张基础数据表

  首先在E1:H10中做一个表格,按图填入数据,这些数据是国家规定的缴纳范围、税率和速算扣除数。

设置公式

  然后在A1:B8中制作“个税计算器”,有公式的各单元格如下:

  B4格显示扣除标准,公式=F1

  公式含义:从F1格中取得数值。

  B5格计算超过扣除标准(3500元/月)的金额,即需要纳税的部分。公式=IF(B2-B4>0,B2-B4,0)

  公式含义:用IF函数判断B2减B4的值,即实际工资减去扣除标准3500元,如果为正数表示需要纳税,如果为负数或零,就不用纳税。

  B6格计算适用税率,公式=(B5<=0)*0+(B5>0)*(B5<1500)*3%+(B5>=1500)*(B5<4500)*10%+(B5>=4500)*(B5<9000)*20%+(B5>=9000)*(B5<35000)*25%+(B5>=35000)*(B5<55000)*30%+(B5>=55000)*(B5<80000)*35%+(B5>=80000)*45%

  公式含义:税率的级数为7级,公式分七个部分,以“+”连接。以公式中的第二部分为例说明一下,这部分对应的是税率的第一级,也就是表中E4:G4位置,“(B5>0)*(B5<1500)*3%” 判断B5>0的逻辑结果如果为真(即条件成立),则(B5>0)结果为TRUE,用数值表示就是1,如果B5>0的逻辑结果为假(即条件不成立),则(B5>0)结果为FALSE,用数值表示就是0 。同样,第二个括号(B5<1500)也是这样,如果超过扣除标准的金额在这个范围内,(B5>0)*(B5<1500)的结果就是1,这个1与3%相乘就是当前的税率3%,否则返回0值。公式的其他部分以此类推。

  B7格计算当前税率对应的速算扣除数,公式=IF(B5=0,0,VLOOKUP(B6,G4:H10,2,0))

  公式含义:如果B5格的值为0,即不用纳税,就返回一个0值,如果B5格的值不为0,就会在B6格中显示一个对应的税率,根据这个税率,使用VLOOKUP函数从表格的G4:G10中查找,找到后返回相同行中的H4:H10中对应的扣除数。

  B8格计算就交纳的个人所得税,公式=ROUND(B5*B6-B7,2)

  公式含义:使用ROUND函数对B5乘B6减B7的结果进行四舍五入,并保留两位小数。

使用

  只要在B2格中输入实际的工资收入金额,就自动在B8格中显示出应交个人所得税的金额。

  如何把这个计算个税的方法应用到工资表中呢?

  其实还有一个更简单的方法,假如工资额在F3单元格中,用下面一个公式就可以计算出个人应缴纳的所得税:

  =ROUND(MAX((F3-3500)*{0.03,0.1,0.2,0.25,0.3,0.35,0.45}-{0,105,555,1005,2755,5505,13505},0),2)

  在这个公式中“F3-3500”就是计算超过起征点的“应纳税所得额”,后面的“{0.03,0.1,0.2,0.25,0.3,0.35,0.45}”是税率,最后的“{0,105,555,1005,2755,5505,13505}”是速算扣除数。

  “应纳税所得额”与公式中的每一个税率分别相乘,再分别减去每一个速算扣除数,就得到一系列(共七个)的“应纳所得税额”。

  注意“应纳税所得额”与“应纳所得税额”的区别,一个是指“工资收入”,一个是指“所得税”。

  大家可以验证一下,针对某一个工资额,只有相符的税率与扣除数,计算出来的税额是最大的,所以在上面公式中用MAX函数从一组结果中选出一个最大值,再由ROUND函数四舍五入保留两位小数。

;

原创文章,作者:九贤互联网实用分享网编辑,如若转载,请注明出处:http://www.kaicen.cn/20221201514741.html