下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、人力资源统计VBA的高级应用实例分析凡从事人力资源工作的人都知道, 工资保险岗位, 统计分析报表比较多, 相应干统计事务也 多,统计的种类和操作也不同, 有些统计工作是自己便表, 设置指标, 这种统计工作一般量 不大,比较好干; 有的统计工作需要从别人的数据表中提炼汇总,基础数据源不同, 数据量 也大,像单位一年的每月的工资数据存放在数据库中, 如 dbf,access 等文件里 , 上千人的单位一年下来数据量比较大 , 而进行收入统计是年底的一项重要工作 , 它是职工各项社会保险 的重要数据 , 也是统计月报的主要数据来源,同时,也是比较麻烦的统计工作,不少统计人 员到年底要对数据进行核对,
2、 对收入数据进行汇总, 大部分人不会编程, 统计起来是件困难 的事情。更麻烦的是很多相关的部门要求提供EXCE文件的格式制作上报文件,如:医疗保险的系统导入收入时要求提供 EXCEL文件的格式;给领导提供分析表格也是 EXCEL文件的格 式,这就给统计工作带来一定的难度。 要想提高工作效率, 你必须使用提供数据的系统编程, 这样以来,你的机器要安装这个系统,还要懂该语言编程,其统计结果还需要转换EXCE的格式, 对编程来说提出了较高的要求。 这种数据源很多, 都采取这种方法显然是不行的。 我 在人力资源工作多年,本人以前做这项工作都要在不同的数据库系统中进行编程,如dbf用VFP编程,代码写在
3、prg文件里,access数据库,代码写在查询”和窗体”文件中。 后用VB调用db数据库等,再将统计结果导成 EXCE文件,感到很麻烦,很累。在经过不断摸 索之后,特别是自学习了 EXCEVBA变成后,发现也能使用 ODA对象,感到很高兴,因它可以 连接不同的数据库,不考虑其来源,都能访问,其结果可以直接写入 EXCE文件获WOR文件, 无论在速度上, 还是效率上都很好。 于是就用它编写程序解决工作的实际问题。 下面介绍的 是以 dfb 数据库为例(这是我工作中的实际情况),试着编了一个小程序,其功能是将从 dbf文件数据自动写入 EXCEL文件中来,编完后经运行感到效果很好,简化了编程过程的
4、繁 杂,减少了转化格式的过程,也减轻了工作量。下面,介绍一下我的编程过程。工作环境:我单位薪酬人员使用 DBF数据库发工资,系统比较早,统计功能不能满足现在 统计的需要。每月的工资汇总到一个总库里,数据库里,每位员工有12 条记录,字段有:工号,姓名(简略了),部门名称,收入总额。其格式如下:Payto20077500.0011:总经理部2200 i200012C0T5億-6-7一袁袁! I总经理都000522%20001IBil 20001袁兼亘9总经理部lUldlUMIBlUialUMIBIMiail总经理部001IlJi liliu Ml BlUiaiU20001-a13-43aa-3_
5、0-1-2袁褒袁-22.2z-2D2u2c.3rl-a-1-4- - 3 - aanj - a- 3-aa1*4 - 23-H-33-i20001l-Js-l1UI-IUUIM2Q001120004 nniBiraiBimia 2000410004iflBIMIBIHBIBIMJIHI200C4-r*: n =Hlril- lJin !* mdr=n ri ra =. 二,.?.00一Do-oo茴ioo一 -一 - n E L p n fa - e n a 二QDE a-4-a-3-ai3-n-4i-a-3 00亘.00股 o-zo.io.scl. OOODOOOD 6 g 6 i 61111
6、6刘wSJMssjBsii-aa-v-a-Eaa-B-i -总经理部j总经理部t-s-s 离理部;总经理部总经理部 I rBiBimiBii 总经理部-一al o - o - o - o - o o - o - Q - o - o 202020s% -al Jaa-9-.a*3-a - J3 - ! 3A-H-20004IU UIBIUI BIUUI20004L m=ELLl20004I a i I a I M I a I W M I20004irnn-ii-iraifi20004-3 一ooss-ood 卿000亟ooomo6 - 6 - 8 - 6 - 6200000004ear Mont
7、hNmeTeamRank XhPaytotal200Tj2;袁湛经理部220020001f7500.00jlieerinrirj ee rrir0LEurirEE e200T3袁总婭理部2200200017500 005200tT_灵姦 爲銓連帝_,_|22Q0fzOQOl7500 66编写这样一个程序,需要具备三方面的知识技能,首先懂得数据库的基本知识,明白数据库的结构,理解字段、记录的含义;其次,掌握SQL语句基本用法,特别是查询语句的使用,即select语句的不同用处;会用 ADC对象,理解连接对象并会使用,理解记录集对象并会 灵活地使用。这些对搞人力资源的专业人员来说有一定难度,本人也
8、是在实际使用过程中, 逐步掌握的,本身并不是计算机专业出身。最后是掌握一点VBA编程技术。只有这样你才能 理解这段不长,但功能很强的代码。程序的第一部分,就是前几行,以Dim开头的语句,这些是定义变量的,目的是为下面使用做基础的。Dim cnn As New ADCDB.Co nn ectio nDim rs As New ADODB.Recordset这两句是定义ADC连接对象和记录集对象的变量,可以理解成我们借来两个大的机器设备, 准备好两个地方。 其他的变量是普通变量,从字母上也很好理解。比如:mymo nth,就是一个统计月数的变量,统计 12个月的数据,就付给它 12,统计6个月的数
9、据,就付给它 6。为了使程序能找到 dbf文件,必须确定当前的路径,接下来的语句就是取得路径的变量,通过ThisWorkbook.Path语句获得路径的。其语句为:myPath = ThisWorkbook.Path而下面的语句是定义了 dbf 文件的完整的文件名和路径xlsFile = Dir(ActiveWorkbook.Path & payto2007.DBF)而下面 5 行,是个定势,是访问数据库 dbf 的固定模式,含义是连接一个 dbf 文件并使这个连接有效。语句为:cnnStr = Driver=Microsoft Visual FoxPro Driver; _& SourceT
10、ype=DBF; _& SourceDB= & myPath & ; _& Exclusive=No;cnn.Open cnnStr需要强调的是, 这 5 行语句中, 只有第三行使用了我们定义的变量, 其他一律照搬, 不需要 理解也能用。 这种使用的方法, 如同我们使用电话机一样, 我们知道打电话时, 只管拨对号 就是了,不必了解其构造。在和数据库联通之后,就为我们查询数据提供了方便,就好比打开了一个仓库的大门, 里面有很多的货物, 下一步我们要采取何种办法, 如何尽快找到我们需要的货物。 对数据库 而言,就要使用记录集了。要完成对记录集的查询,有一个最好的方法,就是用SQL语句,SQL语句是
11、针对各种数据库查询而设计的万能钥匙, 其语法很简单, 用语言叙述, 就是要从那个数据表中, 查看那些数据内容,也就是字段。语法是这样: select (查询语句开头) 字段名 1, 字段名2. from(从那个 ) 数据库名称。如我们写:select name,team,paytotal from pay2007 就是从表名为 pay2007 的表中, 查看员工姓名, 部门和收入总额。 查看的内容一定和数据库里的字段名一致, 如果我们想改名, 就要在该字 段后,写上as再写要显示的名称。如数据库员工姓名字段是name,要改为“姓名”,写成name as 姓名 。有时候我们对查询需要汇总后的内容
12、,那么,再学会使用group by 这句。好了,理解了 SQL语句就掌握了这个程序的内容的80%下面的语句也是个固定模式,理解为运行写好SQL语句并把结果放入内存。具体语句是:rs.Open SQL, cnn, adOpenDynamic, adLockOptimistic我们的目的是将查询的结果放入EXCEL表格中,不是放入内存,放入内存是看不到结果的。因此,要指定当前的EXCEL表格,将内容拷入到表格当中去,在拷贝之前还要将表格清空,防止混乱,同时还要在第一行自动写入每行的标题。如下语句分别解释:Sheets( 累计收入 ).Activate 选定工作表语句Cells.Clear表格清空一下三行在第一行自动写入每行的标题,也是个固定用法For I = 1 To rs.Fields.CountCells(1, I) = rs.Fields(I - 1).NameNext IRange(A2).CopyFromRecordset rs从表格第二行开始复制查询出来的记录rs.Close关闭记录集需要说明的是 rs.Close 语句。当一个查询语句使用后一定要关闭它。一来可以节省内 存的空间, 另外,也为建立新的记录查询做好准备。 关掉后我们就可以再继续进行新的查询。 这段程序之所以能完成三种不同的查询,技巧就在这里。很多教材在写ADC对象的使用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 国际快递运输合同模板
- 2024年热熔胶粘剂项目申请报告
- 2024年医用材料制造项目申请报告
- 2024年现场总线控制系统项目提案报告范文
- 2024年柔性树脂版项目提案报告
- 2024年分散型控制系统(DCS)项目申请报告
- 2024年木材采伐产品项目立项申请报告范文
- 新学期科学工作计划
- 快递公司运货司机劳动协议(3篇)
- 湖南省郴州市(2024年-2025年小学五年级语文)统编版小升初模拟((上下)学期)试卷及答案
- 部编二年级上册道德与法治全册教案(共16课)
- 山东滨盛文旅体育产业集团有限公司招聘笔试题库2024
- 挂靠、被挂靠核算表格
- 广州数据资产管理及入表工作指引 2024
- 消防喷淋安装承包合同(2024版)
- 作物育种学智慧树知到答案2024年中国农业大学
- “双减”小学语文六年级上册单元作业设计案例
- Unit 3 My School教学设计2024年秋人教版新教材七年级英语上册
- 《压覆矿产资源估算规范》编制说明
- 阿里巴巴员工纪律制度
- 《食品添加剂应用技术》第二版 课件 任务5.2 甜味剂的使用
评论
0/150
提交评论