用Excel制作工资表
[摘 要] 本文将工资表分成封面、工资汇总表、工资明细表、工资条、考核表5个部分,通过函数及公式有机地连在一起,共同构成了整个工资表。工资明细表里的数据大部分由考核表计算得到,工资汇总表是对工资明细表的汇总,工资条由工资明细表自动生成。通过挖掘Excel的计算功能,减少数据录入,使数据计算更方便,使制作工资表更轻松。
[关键词] Excel;工资表;宏
Excel是大家熟知的Office组件,它有丰富的函数,有很强的数据计算功能,用它制作工资表简单易行,不需太多的计算机编程知识,不用花钱购买专门的财务软件,非常适合小企业使用。本文通过实例介绍工资表的制作。
一、工资表包含的表格页
首先整体介绍一下工资表,它包含5张表,分别为:封面、工资汇总表、工资明细表、工资条、考核表。因为工资表要打印出来装订,所以专门用一个工作表作工资表封面,如图1。考核表是对每位职工考勤情况及生产数量等数据的记录,如图2,工资明细表中的部分数据
就是根据该表有关项目自动计算出来的,避免了手工计算。工资明细表是工资表中的主要表格,按工资项目列示每位职工的各项工资数,如图3。工资汇总表、工资条比较通用,如图4、图5。5个表格通过Excel公式及函数有机结合在一起,共同构成了整个工资表。下面逐一介绍每张表的制作。
二、工资封面表
工资封面一般包括企业名称、工资所属年度及月份、 制表人及制表日期等内容,可根据企业需要增减,“企业名称”和“年度月份”必须有,因为其他表要引用这两项内容,以方便数据的输入。在输入年度月份时,先输入一个单引号,再输入年度月份,即将本单元格转成文本格式,不能是日期格式。至于字体、字号、行距等格式,可依据自己的喜好设置,这样第一张表就完成了,以后发几月份的工资就将月份改成几月。
三、考核表
考核表不应是工资表中的内容,但它却是计算职工工资所不可缺少的,在制作工资明细表时就要用到它。各企业的考核办法差异很大,考核表也随之不同,本文使用了较为普通的考核
办法,用公式简单表示为:基本工资(不含管理人员的基本工资)=单件计件工资额×产量;缺勤扣发=缺勤日扣工资额×缺勤天数。相应的考核表包含的项目有:年度及月份、工号、姓名、缺勤日扣工资额、单件计件工资额、缺勤天数、产量。输入数据时所有“年度及月份”单元格要“绝对引用”封面表中的“年度及月份”单元格,如本例中输入“=封面!$D$4”($D$4是封面表中的“年度及月份”单元格),这样,保证了年度及月份在两个表中的一致,而且当发下个月的工资时,只需改动封面中的“年度及月份”,本表中的“年度及月份”单元格就全变成和封面中的一样了。本文中用了很多类似的引用,相同的数据只录入一次,避免重复输入发生数据不一致,也减轻了录入量。其他数据逐行输入。所有数据输入完毕后,把“年度及月份、工号、姓名、缺勤日扣工资额、单件计件工资额”各列设置为保护模式,因为这些列一般不会每月变化,避免在输入其他数据时误改,当然需要改变时可撤销保护模式,非常方便。
四、工资明细表
本表是工资表的主要部分,包含的项目可依据本企业情况设定,本例中有:部门、工号、姓名、基本工资、计件工资、奖金、缺勤扣发、应发、扣税、其他扣发、总扣、实发。里面的数据大部分通过引用其他表单元格或用公式计算得到,直接录入的数据并不很多。制作时先
设置第一位职工的数据,然后通过拖动复制,把公式复制到其他行。“部门”、“工号”、“姓名”三项相对引用考核表相应单元格,如:在“部门”单元格中输入“=考核表!B3”(公式中的B3是考核表中首位职工的“部门”单元格,下面的其他公式类似),在“计件工资”单元格中输入公式“=考核表!G5*考核表!J5”,在考核表中输入第一位职工的完工数量后,“计件工资”数就自动计算出来了。同理,“缺勤扣发”单元格输入公式“=考核表!E3*考核表!H3+考核表!F3*考核表!I3”,在“应发”单元格输入公式“=D3+E3+F3-G3”,在“总扣”单元格输入公式“=I3+J3”,在“实发”单元格输入公式“=H3-K3”。“扣税”指代扣的个人所得税,计算稍微复杂一些,要用到VBA编写一个函数,方法如下:顺次执行菜单“工具”—“宏”—“Visual Basic 编辑器”,打开Visual Basic 编辑器,选择菜单“插入”—“模块”,然后再选择菜单“插入”—“过程”,在对话框中选择“函数”单选按钮,输入“函数名称”,如:tax,点击确定,然后在弹出的窗口中输入如下代码:
Public Function tax(salary)
Dim netSalary As Single
netSalary = salary-1 600
Select Case netSalary
Case netSalary 100 000
tax = netSalary * 0.45-15 375
End Select
End Function
最后保存退出,这样计算个人所得税的函数“tax”就完成了。使用方法和Excel内部函数一样,选择“用户定义”函数,就会看到tax函数,选择它并在参数框中输入同一职工的“应发”单元格名,点击“确定”,税金就计算出来了。拖动复制第一行,所有职工的大部分数据就有了,某些数据如“其他扣发”,可能无法计算得到,只能直接输入。这样工资明细表就完成了。日后人员发生增减变动时,先在考核表中变动,考核表中删除某一职工,本表相应行的部分单元格就会变成“#REF!”,表示此行职工在考核表中删除了,把此行删除即可;增加职工,在考核表中插入空行,录入各项数据,然后,在本表相应行次(不能错行)插入空行,复制上一行公式,新职工的大部分数据就有了。
打印时每页要打印表头,所以还要进行如下设置,执行菜单“文件”—“页面设置”,选择“工作表”选项卡,在“顶端标题行”中输入每页要打印的行号,如“$1:$2”,点击确定即可。
六、工资汇总表
工资汇总表是对工资明细表的汇总,本例中按部门分类汇总。制作时首先取得工资明细表数据:首行单元格内输入“=封面!B3&封面!D4&”工资汇总表””,其他单元格皆引用工资明细表,如“部门”单元格输入“=工资明细表!A2”,等等。然后执行菜单“数据”—“分类汇总”,打开分类汇总窗口,“分类字段”中选择分类标准,如“部门”,然后设置其他内容,点击“确定”,汇总表就出来了,在左侧选择汇总级别,可以得到不同级别的汇总表。
七、工资条
使用“宏”制作工资条表,既方便又快捷。首先建立空的工资条表,然后执行菜单“工具”—“宏”— “创建宏”,打开宏窗口,输入宏名称,如salaryScrip,点击创建,在打开的Visual Basic 编辑器窗口中输入如下代码:
Public Sub salaryScrip()
Application.ScreenUpdating = False
Sheets(“工资条”).Rows.Delete
Sheets(“工资明细表”).[A1].CurrentRegion.Copy Sheets(“工资条”).[A1]
rowsCount = Sheets(“工资条”).[A1].CurrentRegion.Rows.Count
For i = rowsCount To 4 Step -1
Sheets(“工资条”).Rows(i).Insert
Sheets(“工资条”).[A2:Z2].Copy Sheets(“工资条”).Cells(i, 1)
Next
End Sub
然后保存退出,salaryScrip宏就建好了。每次要生成工资条,运行该宏即可,再进行必要的格式设置就可以打印了。再有一点,运行宏之前要设置允许宏运行,方法是:执行菜单“工具
”—“宏”—“安全性”,在“安全性”选项卡中选择“中”或“低”。
这样,整个工资表就制作好了,以后发几月份的工资,在上个月的基础上作少量的修改就成了。
主要参考文献
[1] 王素云. 如何用Excel制作工资表[J]. 中国农业会计,2002,(2).
[2] 梁强达. 巧用排序轻松作工资表和工资条[J]. 中国会计电算化,2003,(8).
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论