1、1Excel 在会计日常工作中的运用提要 Excel 的功能越来越强大,但很多会计人员对其了解却很有限。本文试图通过列举笔者在工作中运用 Excel 的两个例子,说明 Excel对于会计工作的重要性,希望引起广大会计人员及会计专业学生对 Excel的兴趣。 关键词:Excel;会计工作;函数;VBA 中图分类号:F23 文献标识码:A 收录日期:2015 年 11 月 27 日 Excel 具有强大的表格处理功能,可方便地进行排序、筛选、汇总等操作;具有丰富的函数,可快速、准确地进行复杂的数学计算;可与 VBA结合进行二次开发,增强 Excel 的自动化能力,高效地完成大量重复的工作。会计特别
2、是成本会计的大部分工作都和处理与分析数据有关,如果能熟练地运用 Excel,就能大大减轻工作量,显著提高工作效率。但目前很多会计工作者对 Excel 的运用仅停留在制表、排序、用公式计算以及 SUM 函数等简单函数的运用上,而对于 ROUND、IF、VLOOKUP 等对于会计而言简单有效的函数知之甚少,对于 EXCEL VBA 更是闻所未闻。 下面笔者以个人所得税的计算为例,介绍一下笔者在十多年来的工作中常用且比较简单的三个函数;以盘点卡的填写为例介绍一下 EXCEL VBA 在会计工作中的运用。 一、运用函数计算个人所得税 2(一)用 VLOOKUP 函数汇总工资及奖金。在工作中工资与奖金通
3、常是分开发放的,假设相关数据分别存放于“工资” 、 “奖金”表中,在计算个人所得税时首先要将工资与奖金相加,当工资表中人数很多时,此项工作量就会很大。VLOOKUP 函数可以帮助我们快速准确地完成此项工作。(表 1、表 2) (为方便起见,本例工资表做了简化处理,仅有三列内容,其中工资为已扣除“五险一金”个人负担部分的工资额。 ) VLOOKUP 函数的语法是:VLOOKUP(查找值,查找范围,查找列数,精确匹配或者近似匹配) 。根据“查找值”参数,在“查找范围”的第一列搜索“查找值” ,找到该值后,则返回值为以第一列为准、往后推数“查找列数”值的这一列所对应的值。最后一个参数如果为 fals
4、e 或 0,则返回精确匹配,如果找不到,则返回错误值#N/A;如果为 TRUE 或 1,函数 VLOOKUP 将查找近似匹配值,也就是说,如果找不到精确匹配值,则返回小于“要查找的数值”的最大数值;如果省略,则默认为近似匹配。笔者在工作中所用到的都是精确匹配。如表 3 所示,在“工资”表中增加一列“奖金” ,在 D2 单元格中录入“=VLOOKUP(B2,奖金!B$2:$C$4,2,FALSE) ”就可以把相应工号的奖金值取过来,再增加一列“合计” ,工资与奖金的汇总工作就完成了。 (表 3) 需要注意的是“查找值“必须唯一,不能重复,否则取数会出错。就本例而言,如果以“姓名”作为“查找值”
5、,两个“张三”取到的都将是第一个出现的工号为“001”的张三所对应的 800。 (二)用 IF 函数计算个人所得税。目前,工资、薪金所得适用七级超额累进税率,免征额为 3,500 元,税率表如表 4 所示。 (表 4)从税率3表中可以看出个人所得税的计算非常麻烦,但在 Excel 中仅用一个简单的 IF 函数就可以快速准确地计算出个人所得税了。 IF 函数的语法是:IF(条件,结果 1,结果 2) ,用于对数据进行判断处理,条件满足则输出结果 1,不满足则输出结果 2。首先,简化一下个人所得税的计算,以便理解这个函数。假设个人所得税的税率只有一级 3%,免征额为 3,500,沿用上例只需在 F
6、2 单元格中录入公式“=IF(E23500, (E2-3500)0.03,0) ”即可计算出个人所得税。(表 5) 而对于目前实行的七级超额累进税率,就要用 IF 函数的嵌套使用来实现了。在 F2 单元格中录入公式“=IF(E2-3500)=0,0,IF(E2-3500)=1500, (E2-3500)0.03,IF(E2-3500)=4500, (E2-3500)0.1-105,IF(E2-3500)=9000, (E2-3500)0.2-555,IF(E2-3500)=35000, (E2-3500)0.25-1005,IF(E2-3500)=55000, (E2-3500)0.3-275
7、5,IF(E2-3500)=80000, (E2-3500)0.35-5505, (E2-3500)0.45-13505) ) ) ) ) ) )”即可方便地计算出个人所得税了。 (三)用 ROUND 函数对个人所得税的数值进行四舍五入处理。从表5 中可以看到,计算出的个人所得税为四位小数,如果将显示位数设置为两位(即精确到分) ,就会出现以下结果:38.35+90.02=128.37,但合计却显示 128.36,虽然只是一分钱之差,但在会计工作中是不可接受的。4可用 ROUND 函数来解决这个问题。 (表 6) ROUND 函数的语法是:(要四舍五入的数字,要保留的小数位数) 在简化税率的那
8、个例子中将公式改为=ROUND(IF(E33500, (E3-3500)0.03,0) ,2) ,合计数就变为128.37。 二、运用 Excel VBA 填写盘点卡 VBA 是 Visual Basic for Application 的简称,它应用了 Visual Basic 的语言结构,并紧密地与各种应用软件整合在一起,组成一个开发环境。当 VBA 被加入到 Excel 软件后,就成了 Excel VBA,它更加易于学习掌握,即使是没有任何编程经验的人也可通过自学加上 Excel 的宏“录制功能” ,运用 VBA 在 Excel 内开发出功能强大的自动化程序,完成例行的重复性操作,以节省
9、人工操作时间并避免错误的发生。以下以盘点卡的填写为例做简单介绍。 首先,创建“盘点卡.xlsm”工作簿,在“Sheet1”工作表中录入表7 的内容;创建“盘点清册.xlsx” ,在“Sheet1”工作表中录入表 8 的内容。 (表 7、表 8) 其次,同时按下 ALT 和 F11 键,就可进入 VB 编辑窗口,点插入-模块,然后录入下面的代码并保存: 5注:代码中逗号后的汉字为对这一行代码作用的说明,只是便于读者理解,在程序中是不起作用的,可以不用录入。 最后,运行子过程/用户窗体,即可将盘点清册中的内容快速准确地填写到盘点卡中,将其打印出来,再送到文印店进行切割,盘点卡就制作完成了。当物料有成千上万种时,手工填写需要一两天的时间,而用这个程序几分钟就可以完成了,EXCEL VBA 对于提高工作效率的作用由此可见一斑。 (表 9) 主要参考文献: 1魏汪洋等.零点起飞学 Excel VBAM.清华大学出版社,2013. 2文杰学院组.Excel 公式与函数案例速查手册M.机械工业出版社,2014. 3李志辉,王珏.商业银行信息科技外包风险管理研究基于Excel 逻辑函数的应用J.国际金融研究,2014.3.