2015年 第 1 期
财会月刊(1期)
会计电算化
Excel SQL在工资数据统计和汇总中的应用

作  者
王新平

作者单位
(郑州升达经贸管理学院资讯管理系,郑州 451191)

摘  要

      【摘要】企业财务人员在处理工资汇总等问题时,如果单独使用Excel统计汇总功能会非常烦琐并且容易出错。本文结合实例,将Excel SQL和Excel统计汇总功能如数据透视表等结合起来,快速准确处理了工资汇总、先筛选后汇总等问题。其最大的优点是,当数据源改变时只需点击刷新按钮即可得到重新计算的结果,非常准确和方便。
【关键词】Excel SQL;工资;汇总;统计

一、引言
财务人员在工资核算工作中经常需要对工资数据进行筛选和汇总。当数据来自不同的工作簿,并且数据经常修改或添加时,直接使用Excel汇总功能比如数据透视表时,工作量很大。这时如果结合Excel SQL语句则能大大减轻财务人员工作量。因此,本文提出了Excel环境下使用SQL语句对工资数据进行筛选和汇总,可以极大地提高财务人员的工作效率。
Excel 的SQL功能在Excel功能区获取外部数据组中。使用Excel SQL功能时,Excel通过OLE DB接口获取外部数据源,同时可以在数据源连接属性定义选项的命令框中输入SQL语句,然后Excel会执行SQL语句并返回结果。Excel可以获取的外部数据源格式很丰富,包括Excel文件格式、Access文件格式等。因为大部分财务人员对Excel SQL语句不太了解,下面结合实例详细介绍Excel SQL在企业工资数据统计和汇总中的具体应用。
二、Excel SQL在企业工资数据统计和汇总中的具体应用实例
某企业于年底时进行工资汇总,该企业每月的工资数据都保存在独立的Excel工作簿中,数据格式如表1。

[工号\&姓名\&岗位
工资\&工龄
工资\&副食
补贴\&交通
补贴\&住房
补贴\&水电
补贴\&总工资\&1001\&罗月\&1 800\&251\&100\&200\&300\&54\&2 705\&1002\&王香香\&1 801\&252\&101\&201\&301\&57\&2 713\&1003\&孙月\&1 802\&253\&102\&202\&302\&60\&2 721\&1004\&周龙\&1 803\&254\&103\&203\&303\&63\&2 729\&1005\&刘杰\&1 804\&255\&104\&204\&304\&66\&2 737\&[⋮]\&[⋮]\&[⋮]\&[⋮]\&[⋮]\&[⋮]\&[⋮]\&[⋮]\&[⋮]\&]
财务人员一般会先将十二个月的数据通过复制粘贴集中到一张Excel工作表上,然后使用数据透视表等功能进行汇总分析。但是,这个问题的难点在于每月的报表有时可能需要多次添加数据、修改数据等。这时财务人员就需要多次进行重复操作,不仅麻烦并且容易出错。
此类问题的彻底解决需要使用Excel的SQL语句。步骤如下:
1. 新建一个名为科目汇总的工作簿。然后点击Excel 2010数据选项卡中获取外部数据组中的现有连接,然后出现现有连接对话框,如图1。

 

 

 

 

 

 


2. 点击现有连接对话框中左下角的“浏览更多”按钮,打开存放数据的文件夹。选择名为“一月”的工作簿,点击打开按钮,如图2。
3. 选中一月,点击确定按钮,如图3。
4. 在出现的导入数据对话框中数据导入方式选择数据透视表,如图4。
5. 点击属性按钮,在定义选项卡上命令文本中输入以下SQL语句,然后点击确定。
select ∗ from [F:\论文发表\财会月刊\工资数据\一月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\三月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\四月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\五月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\六月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\七月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\八月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\九月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\十月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\十一月.xls].[工资数据$]
UNION ALL
select ∗ from [F:\论文发表\财会月刊\工资数据\十二月.xls].[工资数据$]
连接属性话框如图5所示。
6. 在数据透视表中,将单位字段拖动到行标签,将工号字段和姓名字段拖动到列标签,将岗位工资字段、工龄工资字段、副食补贴字段、交通补贴字段、住房补贴字段、水电补贴字段和总工资字段拖动到∑数值中,汇总结果如表2所示。
如果源数据改变,单击数据选项卡中的刷新即可得到重新计算的数据,非常方便。
使用Excel SQL语句还可以先进行筛选,然后汇总。例如分别筛选出第一季度每月工资总额的前3名然后汇总的SQL语句如下:
select top 3 [工资数据$].工号,[工资数据$].姓名,[工资数据$].岗位工资,[工资数据$].工龄工资,[工资数据$].副食补贴,[工资数据$].交通补贴,[工资数据$].住房补贴,[工资数据$].水电补贴,[工资数据$].总工资
from [F:\论文发表\财会月刊\工资数据\一月.xls].[工资数据$] ORDER BY [工资数据$].总工资
DESC
UNION ALL(select top 3 [工资数据$].工号,[工资数据$].姓名,[工资数据$].岗位工资,[工资数据$].工龄工资,[工资数据$].副食补贴,[工资数据$].交通补贴,[工资数据$].住房补贴,[工资数据$].水电补贴,[工资数据$].总工资
from [F:\论文发表\财会月刊\工资数据\二月.xls].[工资数据$] ORDER BY [工资数据$].总工资
DESC)
UNION ALL
(select top 3 [工资数据$].工号,[工资数据$].姓名,[工资数据$].岗位工资,[工资数据$].工龄工资,[工资数据$].副食补贴,[工资数据$].交通补贴,[工资数据$].住房补贴,[工资数据$].水电补贴,[工资数据$].总工资
from [F:\论文发表\财会月刊\工资数据\三月.xls].[工资数据$] ORDER BY [工资数据$].总工资
DESC)
UNION ALL
(select top 3[工资数据$].工号,[工资数据$].姓名,[工资数据$].岗位工资,[工资数据$].工龄工资,[工资数据$].副食补贴,[工资数据$].交通补贴,[工资数据$].住房补贴,[工资数据$].水电补贴,[工资数据$].总工资
from [F:\论文发表\财会月刊\工资数据\四月.xls].[工资数据$] ORDER BY [工资数据$].总工资
DESC)
执行SQL语句后的工资数据汇总结果如表3所示。
三、小结
从本文实例可以看出,使用Excel SQL语句可以极大地提高企业财务人员对工资数据进行统计和汇总的工作效率。将Excel SQL与Excel的数据分析功能如数据透视表功能结合起来,可以使财务人员快捷、灵活、准确地处理工资数据,避免单独使用Excel操作时的繁琐和容易出错等问题。
主要参考文献
陈国栋.运用Excel SQL语句处理大量会计数据[J].财会月刊,2014(16).
林盘生.Excel 2010 SQL完全应用[M].北京:电子工业出版社,2011.
杨瑞雨.浅析利用Excel+SQL Server实现企业信息管理[J].数字技术与应用,2011(11).