EXCEL VBA 新个人所得税税率自定义函数IN_TAX()及用法

合集下载

Excel VBA在计算个人所得税中的运用

Excel VBA在计算个人所得税中的运用

ExcelVBA在计算个人所得税中的运用[摘要]Excel处理数据的缺点是每一步都需要人工操作和控制,对重复性的工作每次都要重复去做,所以用Excel来计算个人所得税效率太低、太复杂。

Excel VBA能够将重复的工作编写成程序,不仅能够提高效率,还能避免人为操作的错误。

本文主要阐述了如何运用VBA编写计税函数程序,由程序自动完成计税任务。

[关键词]个人所得税;VBA函数;计税一、ExcelVBA简介宏语言(Visual Basic for Applications,VBA)是新一代Microsoft Windows 应用软件通用的宏控制语言,是VB(Visual Basic)的一个子集,但不能像VB 一样用于创建独立的应用程序,需要在Excel等软件的运行环境下才能运行,较之于VB它更强调对Office软件各类功能的控制,尤其是VBA可以创建自定义的解决方案,最适合用来定制已有的桌面应用程序,通常意义上的VBA就是在Office中包含着的一种加强Office功能的Basic语言。

ExcelVBA就是将Excel作为开发平台来开发应用程序,通过记录宏直接生成宏程序代码来对Excel工作表进行控制,从而实现对Excel工作表数据处理等的自动化管理。

二、ExcelVBA 在计算个人所得税中的优势尽管大多数工资核算软件已含有计税功能,但还是不能满足实际工作的需要,比如,许多单位除了工资之外还有一些不随工资发放的、与效益挂钩的绩效工资、津贴等其他收入,工资软件中计算扣缴的只是工资收入应缴纳的个人所得税,而全员全额纳税管理要求每个人将所有收入合并申报纳税,因此,在实际工作中,大多数单位都是采用Excel工作表来计算每个人应缴纳的个人所得税。

Excel处理数据的缺点是每一步都要人工操作和控制,对重复性的工作每次都要重复去做。

由于我国工资、薪金个人所得税计算采用的是九级超额累进税率,运用Excel计算个人所得税,需要对每一个人的收入进行判别,判别是否应缴纳个税,如应纳税适用的税率是多少,然后再套用适当的税率来进行计算。

Excel中自定义函数计算个人所得税收税

Excel中自定义函数计算个人所得税收税

Excel中自定义函数计算个人所得税收税使用自定义函数下面就通过此例介绍使用自定义函数的全过程,即使是初学Excel的朋友,也会感觉其操作实际上是非常简单的。

1. 为了便于测试自定义函数的计算效果,可以先把上面采用公式计算的结果删去。

然后选择菜单“工具→宏→Visual Basic编辑器”命令(或按下键盘Alt+F11组合键),打开Visual Basic窗口,我们将在这里自定义函数。

2. 进入Visual Basic窗口后,选择菜单“插入→模块”命令,于是得到“模块1”,在其中输入如下自定义函数的代码(图1):Public Function itax(x)Select Case xCase Is <= 3500itax = 0Case 3500 To 5000itax = 0.03 * (x - 3500) - 0Case 5000.01 To 8000itax = 0.1 * (x - 3500) - 105Case 8000.01 To 12500itax = 0.2 * (x - 3500) - 555Case 12500.01 To 38500itax = 0.25 * (x - 3500) - 1005Case 38500.01 To 58500itax = 0.3 * (x - 3500) - 2755Case 58500.01 To 83500itax = 0.35 * (x-3500) - 5505Case Elseitax = 0.45 * (x-3500) - 13505End SelectEnd Function3. 函数自定义完成后,选择菜单“文件→关闭并返回到Microsoft Excel”命令,返回到Excel工作表窗口,在C2单元格中输入公式“=itax(B2)”回车后就计算出了第一个员工应付的个人调节税,然后用公式填充柄复制公式到其它后面的单元格,这样就利用自定义函数完成了个人调节税的计算(图2)。

如何利用EXCEL计算个人所得税

如何利用EXCEL计算个人所得税

如何利用EXCEL计算个人所得税实行会计集中核算后,纳入集中核算单位的个人所得税的代扣代缴义务转移到了会计核算中心,由于会计核算中心的柜组会计每人要负责近10单位单位的会计核算任务,相应地就要增加近10单位的个人所得税计算和代扣代缴工作。

工作量非常之大,如果用传统的手工计算,时间和精力都用不过来,手头又没有这方面的应用软件。

怎么办?情急之下,我想到了微软公司的Excel。

现在把我在实践中的应用过程介绍给大家:一、创建工作簿1、新建个人所得税文件夹。

打开[我的电脑],双击[〔d:〕],右击桌面的空白区域,打开快捷菜单,选择[新建],在弹出的子菜单中单击[文件夹]。

这时,在d盘上出现了一个名为[新建文件夹]的文件夹,右击该文件夹,在快捷菜单中单击[重命名],将文件夹名改为[个人所得税]。

2、建立单位个人所得税工作簿文件。

双击已建好的文件夹[个人所得税],在桌面空白处右击弹出快捷菜单,选中[新建]后单击子菜单的[Microsoft Excel 工作表],于是就建立了一个名为[新建Microsoft Excel 工作表]的文件,右击该文件,在快捷菜单中单击[重命名],将文件改名为[单位甲]。

二、制作个人所得税计算表1、设置工作表标签。

双击打开[单位甲],把鼠标移到标签栏上,右击弹出快捷菜单,单击[插入],弹出一个[插入]对话框,双击对话框中的[常见]选项卡内的[工作表],这时,在工作表的标签栏内出现[Sheet4],重复操作直到标签栏内出现[Sheet12],用右击快捷键[重命名]方法将标签栏从左至右改名为[一月]至[十二月]。

2、制作空白的个人所得税计算表。

先将鼠标停留在标签上,点鼠标右键选定全部工作表,再编辑空白的个人所得税计算表。

如图:三、设计计算公式1、求和公式。

假定单位甲在职职工15人,一月份工资薪金包括工资、误餐费、生活补助、奖金、津贴、交通费、其他七项。

求和公式有二个:一是工资薪金项目求和公式。

EXCEL计算个人所得税的几种公式编写方法

EXCEL计算个人所得税的几种公式编写方法

EXCEL计算个人所得税的几种公式编写方法由于EXCEL公式只允许IF嵌套到七层,而当前个调税税制正好七个梯级,虽然平时不会有什么问题,但是在计算年终奖税点时,由于还要判断12月是否已纳税,因此势必再次嵌套第八重,很多同学在这里卡壳了,因为套上第八层IF后,系统报错。

于是,同学们被迫采取了以下方法:舍去部分高收入梯级(反正一般领“薪金”而要用EXCEL作工资表的人,都不会有80000多的月薪)。

但是这种方法总是存在着隐患,总让有完美癖的人感觉有点不放心,当然,也有的同学,再舍去部分梯级以后,再加上一个文字提示形如“if(A1=80000,"税率未设置")”这样的东西,但是由于在数字列夹着文字,看着还是不太舒服。

那么有没有其他的方法可以避免七重IF嵌套,而且鬼才知道我们可爱的税务总局会不会再细化这个征税梯级,如果增加到八层九层十层,那就真坑爹了。

夏侯经过仔细研究,发现了几种方法,供大家参考。

一、先说一下常规思路(IF顺序嵌套)公式:=IF(A2-3500<=0,0,IF((A2-3500)<=1500,(A2-3500)*0.03,IF((A2-3500)<=4500,(A2-3500)*0.1-105,IF((A2-3500)<=9000,(A2-3500)*0.2-555,IF((A2-3500)<=35000,(A2-3500)*0.25-1005,IF((A2-3500)<=55000,(A2-3500)*0.3-2755,IF((A2-3500)<=80000,(A2-3500)*0.35-5505,(A2-3500)*0.45-13505)))))))说明:这就是那个恰好用完七重嵌套的if公式,在计算单月税金时是可以用的。

二、二叉树if=IF((A2-3500)>=35000,IF((A2-3500)>=80000,(A2-3500)*0.45-13505,IF((A2-3500)>=55000,(A2-3500)*0.35-5505,(A2-3500)*0.3-2755)),IF((A2-3500)<=0,0,IF((A2-3500)<=1500,(A2-3500)*0.03,IF((A2-3500)<=4500,(A2-3500)*0.1-105,IF((A2-3500)<=9000,(A2-3500)*0.2-555,(A2-3500)*0.25-1005)))))说明:不允许嵌套,并不等于不允许出现七个以上的条件,本例中,不按上例中“是否属于第一级,如果不是判断是否属于第二级,如果还不是,判断是否属于第三级……”这样子“一条道走到黑”,而是从中间先判断,这样,先用一个IF把可能情况分成“上下半区”,然后再继续分别判断,显然,用这种二叉树,可以节省很多嵌套层次,因为每个半区还各有六层可以使用。

新税率下利用EXCEL计算个人所得税

新税率下利用EXCEL计算个人所得税

新税率下利用EXCEL计算个人所得税在使用Excel计算个人所得税时,我们需要掌握以下几个关键概念和公式:1.税率表:根据所得税法规定,个人所得税按照不同的税率进行计算。

新税率下,我国个人所得税分为7个级别,税率为3%、10%、20%、25%、30%、35%、45%。

根据税率表,我们可以根据不同收入段的税率计算个人所得税。

2.起征点:起征点是指个人所得税开始计征的最低收入额,高于起征点的收入需要缴纳相应的个人所得税。

根据最新的个人所得税法规定,起征点为5000元。

3.个人所得税应纳税所得额:个人所得税应纳税所得额是指个人收入减去各项可减除费用后的金额,即应缴税的收入部分。

4.应纳税额:应纳税额是指根据个人所得税税率表计算出来的税款。

在Excel中,我们可以使用IF函数和VLOOKUP函数来进行个人所得税的计算。

首先,我们需要输入个人的收入金额,然后使用IF函数计算应纳税所得额。

假设我们将收入金额输入到单元格A2中,公式如下:=IF(A2<=5000,0,A2-5000)上述公式的意思是,如果收入金额小于等于5000,则应纳税所得额为0,否则应纳税所得额为收入金额减去5000。

接下来,我们需要使用VLOOKUP函数来查找应纳税所得额对应的税率。

假设我们在A3单元格中输入应纳税所得额,公式如下:=VLOOKUP(A3,A8:B14,2,TRUE)上述公式的意思是,在A8:B14区域中查找应纳税所得额,并返回相应的税率。

根据这个税率,我们可以使用IF函数进行应纳税额的计算。

假设我们在A4单元格中输入税率,公式如下:=IF(A3<=5000,0,A3*VLOOKUP(A3,A8:B14,2,TRUE))上述公式的意思是,如果应纳税所得额小于等于5000,则应纳税额为0,否则应纳税额为应纳税所得额乘以税率。

最后,我们可以通过使用SUM函数将应纳税额加总,得到个人所得税的总额。

假设应纳税额分别存在A4到A10单元格中,公式如下:=SUM(A4:A10)上述公式的意思是,将A4到A10单元格中的值相加,得到个人所得税的总额。

Excel中利用函数公式计算个人所得税的方法

Excel中利用函数公式计算个人所得税的方法

Excel中利用函数公式计算个人所得税的方法
Excel中利用函数公式计算个人所得税的方法
Excel的强大在于你如何利用它! 下面将教利用某些函数来计算个人所得税。

今天,店铺就教大家在Excel中利用函数公式计算个人所得税的方法。

希望对你有帮助!
Excel中利用函数公式计算个人所得税的步骤
首先,我们先了解个人所得税的计算,
个人所得税 =(工资 - 三险一金 - 个税起征点)x 税率 - 速算扣除数,其中小括号里的“工资 - 三险一金 - 个税起征点”通常被称为“应纳税所得额”或“应纳税额”,
工资:应发工资,
三险一金:养老保险、医疗保险、失业保险、住房公积金(属于五险一金的工伤保险和生育保险不算在这里),
起征点: 3500元
税率:由3%上涨到45%,有7个等级,分别与7个不同区间的应纳税所得额对应
速算扣除数:由0上涨到13505,也有7个等级,与不同税率相对应。

然后打开准备好的原始数据工作表,
Excel中利用函数公式计算个人所得税的步骤图1
在工作表B2输入公式:
=ROUND(MAX((A2-3500)*{0.03,0.1,0.2,0.25,0.3,0.35,0.45}-{0,105,555,1005,2755,5505,13505},0),2)
其中A2为应发工资扣除三险一金(养老保险、医疗保险、失业保险、住房公积金)之后的余额
其他的数据对应前面提到的个人所得税起征点、税率、速算扣除数
Excel中利用函数公式计算个人所得税的步骤图2
向下拖动单元格填充内容即可计算应交个人所得税。

只要有工资数据,还有这个公式,就可算出要交的税啦。

Excel中利用函数公式计算个人所得税的步骤图3。

Excel个人所得税公式和自定义函数

Excel个人所得税公式和自定义函数

Excel个⼈所得税公式和⾃定义函数注意:本⽂⽅法整理⾃⽹络⽤ Excel 计算个⼈所得税是⼤家经常遇到的事情,⼀般我都是⽤⾃定义函数来实现。

其实⽤公式来计算个⼈所得税也是很不错的选择,这⾥综合⽹上的⽅法,分别介绍⽤公式和⾃定义函数来计算个⼈所得税。

⼀、使⽤公式计算个⼈所得税使⽤以下公式即可计算个⼈所得税:=ROUND(MAX((A1-3500)*0.05*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701},0),2)其中的 A1 为需要计算所得税的⾦额,效果如图:⼆、使⽤⾃定义函数下⾯我们就来介绍⼀下使⽤⾃定义函数来计算所得税,1、创建⼀个计算所得税的⾃定义函数:打开 VBE,添加⼀个⾃定义模块,在模块中添加以下代码:Public Function Incometax(Amount)Select Case AmountCase Is <= 3500Incometax = 0Case 3500 To 5000Incometax = 0.03 * (Amount - 3500) - 0Case 5000.01 To 8000Incometax = 0.1 * (Amount - 3500) - 105Case 8000.01 To 12500Incometax = 0.2 * (Amount - 3500) - 555Case 12500.01 To 38500Incometax = 0.25 * (Amount - 3500) - 1005Case 38500.01 To 58500Incometax = 0.3 * (Amount - 3500) - 2755Case 58500.01 To 83500Incometax = 0.35 * (Amount - 3500) - 5505Case ElseIncometax = 0.45 * (Amount - 3500) - 13505End SelectEnd Function2、在⼯作表中直接使⽤以下公式即可:=Incometax(A1)其中的 A1 为需要计算所得税的⾦额,效果如图:这两种⽅法,各有优缺点,各位可以根据需要⾃⾏采⽤。

在Excel中利用VB计算工资薪金个人所得税

在Excel中利用VB计算工资薪金个人所得税

在Excel中利用VB计算工资薪金个人所得税在Excel中计算工资薪金个人所得税时,因工资薪金所得额的级数太多,导致Excel中自带的if函数不能满足要求。

下面介绍一种用Excel高级功能来解决此类问题的方法。

这种方法对于没有接触过VB的朋友来说,可能比较陌生。

但是只要按下面介绍的步骤来做,还是比较容易学会的,而且维护起来比较方便。

一、首先要降低Excel的安全性。

Excel默认的安全性比较高,是禁止VB程序运行的。

1、打开“工具”→“选项”→“安全性”,取消“保存时从文件属性中删除个人信息”前的对勾。

2、打开“工具”→“宏”→“安全性”级别设置为“中”或“低”(设置为“中”的话每次运行有提示)。

二、用VB来实现所需要的功能。

1、打开Excel中“工具”→“宏”→“Visual Basic编辑器”。

2、在编辑器菜单栏上选择“插入”→“模块”,出现代码窗口。

3、把下面的代码复制后粘贴到代码窗口处。

4、保存后退出返回到Excel工作表界面。

下面是需要复制和粘贴的代码:Function gz(x) as Double '工资薪金个人所得税计算过程(非外籍人员、非一次性年终奖)Const m = 2000 '设置费用扣除额q = x - m '费用扣除后的所得额If q <= 0 Then '当所得额不大于0时,税款为0gz = 0ElseIf q <= 500 Then '当所得额不超过500时,税款为所得额乘以5%的税款减去为0值的速算扣除数。

以下依次类推。

gz = q * 0.05ElseIf q <= 2000 Thengz = q * 0.1 - 25ElseIf q <= 5000 Thengz = q * 0.15 - 125ElseIf q <= 20000 Thengz = q * 0.2 - 375ElseIf q <= 40000 Thengz = q * 0.25 - 1375ElseIf q <= 60000 Thengz = q * 0.3 - 3375ElseIf q <= 80000 Thengz = q * 0.35 - 6375ElseIf q <= 100000 Thengz = q * 0.4 - 10375Elsegz = q * 0.45 - 15375End IfIf gz <> 0 Then gz = Format(gz, "##.00") '格式设为保留两位小数End FunctionFunction nz(x, y) as Double '一次性年终奖的计算过程Const m = 2000 '设置费用扣除额If y >= m Then '纳税人当月工资性收入大于或等于个人所得税费用扣除额。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Excel VBA新个人所得税税率自定义函数in_tax()及用法1、VBA代码
Public Function in_tax(in_month As Single)As Single
Dim sl As Single,kcs As Single,ynse As Single'定义税率sl,扣除数kcs,应纳税额ynse变量
ynse=in_month-3500
Select Case ynse
Case0To1500'如果应纳税额<=1500,税率3%,速算扣除数0。

sl=0.03
kcs=0
Case1501To4500'如果应纳税额(1500,4500],税率10%,速算扣除数105。

sl=0.1
kcs=105
Case4501To9000'如果应纳税额(4500,9000],税率20%,速算扣除数555。

sl=0.2
kcs=555
Case9001To35000'如果应纳税额(9000,35000],税率25%,速算扣除数1005。

sl=0.25
kcs=1005
Case35001To55000'如果应纳税额(35000,55000],税率30%,速算扣除数2755。

sl=0.3
kcs=2755
Case55001To80000'如果应纳税额(55000,80000],税率35%,速算扣除数5505。

sl=0.35
kcs=5505
Case Else'如果应纳税额>80000,税率45%,速算扣除数13505。

sl=0.45
kcs=13505
End Select
If ynse<=0Then
in_tax=0
Else
in_tax=Round(ynse*sl-kcs,2)
End If
End Function
2、使用方法
打开Excel,菜单“工具——宏——Visual Basic编辑器”,打开"Visual Basic编辑器"窗口,“插入——模块”,左侧窗口显示“模块1”
双击“模块1”,在右侧代码窗口复制“Public Function.......End Function”(含)之间的自定义函数代码,如下图所示:
点击“保存”,退出"Visual Basic编辑器"窗口。

回到工作表界面,in_tax()函数用法如下图所示:
如图所示,月薪酬总额为5000时,应纳个税45。

b4=in_tax(a4)。

相关文档
最新文档