EXCEL在项目报表开发上的应用
作者: 《普华通讯》练邦君
提交人: puhua[《普华通讯》练邦君]
属性: 提交人原创
发布时间: 2008/11/25
点击: 17198
【收藏本文 】
在项目实施过程中间,客户经常会需要查看一些与项目信息有关的报表。以报表的形式展示项目数据,可以使客户更好地了解到项目的具体进度和详细情况,更好地把握项目实施的进度,所以项目报表是在整个项目实施过程中间不可或缺的一部分。P3E/C是自带报表功能的,但是有些客户由于其项目的特殊性有某些特定的报表需求,这就必须进行报表的二次开发,一般会采用外部开发工具来开发报表。通常使用的有Crystal Reports,Active Report,Excel等报表开发工具. Crystal Reports等商业报表开发工具功能强大,但是其价格极为高昂,而且对于比较特殊化的表格,特别是国内的一些应用,都是一个个的格子组成的,这样要是用线来一根根画就比较麻烦,这类工具都不提供表格化的报表布局定义方式。而Excel因为其简单方便、接口清晰、功能全面、界面熟悉、使用免费、适合国内报表需求特点等优点而受到广泛使用。 项目管理者联盟文章 项目管理培训 很多人对Excel的认识不够深入,误认为Excel只是一个用来统计数据和制作图表的程序。其实Excel本身提供了强大的二次开发功能,它自身强大的二次开发工具—VBA,是报表开发的利器。VBA(Visual Basic For Applications)是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言,VBA可使常用的过程或者进程自动化,可以创建自定义的解决方案,最适用于来定制已有的桌面应用程序。VBA是一种面向对象的编程语言。对象是Visual Basic的结构基础,VBA应用程序就是由许多对象组成。VBA里面有以下的对象模型: 项目管理者联盟 (1)属性: 属性是对象的一种特性或该对象行为的一个方面,定义了对象的特征,诸如大小、颜色或屏幕位置,或某一方面的行为,诸如对象是否有激活或可见的.有些属性并不能设置。每一个属性的帮助主题,会指出是否可以设置此属性(读与写),或只能读取此属性(只读),还是只能写入此属性(只写)。(2)方法:方法是对象可以执行的动作。方法通常带有参数,以限定执行动作的方式。如果对象共享共同的方法,则可以操作整个对象集合。(3)事件: 事件也可以称为动作.VBA效力于事件驱动的编程模型。程序是为响应事件而执行的。事件是一个对象可以辨认的动作,并且可以写某些代码针对此动作来做响应(4)对象变量: 在进行程序设计时,采用这样的原则:如果需要输入同样对象的名字全称两次以上,就创建一个对象变量以节省输入时间。 项目经理圈子 项目管理者联盟 VBA对象模型把后台复杂的代码和操作封装在易于使用的对象、方法、属性和事件中,这样开发者只需要面对相对简单和直观的对象语法。提高了应用程序的简单性和可重复利用性。使用Excel来开发报表,除了要对VBA开发语言较熟悉以外,还要对PMDB数据库的表结构有一定的了解。下面以ZTE项目的站点信息统计图报表为例。浅谈一下EXCEL报表开发流程: 项目管理者联盟文章 talent.mypm.net 在ZTE项目的实施过程中是需要经常进行报表二次开发的,站点信息统计图报表就是一个典型的报表开发例子。客户的需求是:可以通过该报表查看站点的统计信息,例如处于不同地区,不同阶段,不同年度的站点数量和不同站点类型在不同地区,阶段和年度下的站点数量;客户除了希望可以看到直观的数据之外,还希望可以通过饼图来查看站点数量的比例。该报表必须在MP上查看,并会自动定期更新,以便查看最新的数据。 项目管理论坛 项目管理论坛 确定客户需求之后,就可以进行开发了。首先要把客户所需要的数据从PMDB数据库里面导出到EXCEL里面。从数据库导入数据到Excel里面有两种方法可以实现。一种是通过Microsoft Query。Microsoft Query 是用于将数据从外部数据源检索到Microsoft Excel中的一种程序。通过使用 Query 可以从企业的数据库中抽取数据。也可以在每次更新数据库时,自动通过源数据库中的数据来更新 Excel 报表和汇总数据。使用Microsoft Query抽取数据方便快捷,但是数据在Excel工作表上只能按行进行排列; 项目管理者联盟 项目管理者联盟 另外一种方法就是通过VBA,通过编写代码使用ODBC连接数据库,通过SQL语句把数据抽取出来。而通过VBA代码抽取的数据,既可以在Excel工作表上按行进行排列,也可以按列进行排列,符合不同的要求。 项目管理论坛 项目管理者联盟 最后,把抽取出来的数据放在Excel的工作表上面,成为一个二维表格:结果如下图所示: 项目管理者联盟 blog.mypm.net 项目管理者联盟 读取完原始数据之后,需要将获取到的原始数据进行统计,判断,排序,形成报表数据。并且需要对格式进行规范,对字体的样式和大小做一定的设定,调整表格边框线等设置。这些可以在VBA里面通过编写代码来实现,如果不知道应该怎么编写VBA语句和具体该用到对象的那些属性﹑方法的话,可以通过“宏”来查看对EXCEL进行操作时的后台代码。在进行某种操作之前,先点击“录制新宏“,这时系统就会自动记录接下来对EXCEL进行操作时的后台代码,操作完成后,点击”停止录宏“,然后在VBA编辑器的模块里面就可以查看刚才操作所记录下来的后台代码。将这些代码稍微修改一下,就可以在VBA上运行,实现数据格式化的自动操作。 blog.mypm.net 项目管理者联盟 •规范化后的数据就是客户所需要的报表数据了,接下来需要根据数据来生成饼图。Excel自带的图表功能非常强大,可以生成各种各样的图表。如果不了解Excel是如何根据数据生成饼图的,也可以通过“宏“来学习一下具体的操作代码。在VBA里面输入相应的代码之后,可以得到如下的最终结果: 项目管理者联盟 service.mypm.net 为了使这个Excel文件每次打开都可以看到最新的数据,还要在窗口对象的OPEN事件里面输入每次打开Excel文件都会自动运行后台语句的代码,让每次打开Excel文件都可以让代码自动运行一遍,以便查看到最新的数据。同时,我们还要把Excel里面“宏”的安全级别设置为“中”或者“低”,这样打开Excel文件之后才可以允许VBA代码的运行。 项目管理论坛 bbs.mypm.net 现在的报表文件只是Excel格式的,不能满足客户挂接在MP上查看的要求,因为MP是基于B/S模式的,所以要把Excel文件最后保存成为网页格式。在最后生成饼图的语句后面,还要再加上让Excel自动关闭,并另存为Html格式的代码,这样就可以做到每次打开Excel文件时,都会自动从数据库里面读取数据,然后整理成报表数据,并根据得到的报表数据进行画图,画图结束后,会自动关闭Excel,并保存成Html格式。现在要把Html格式的报表挂接到MP上面,方便客户在使用MP组件的时候,可以查看报表。可以把报表放在Windows系统的IIS的目录底下,通过MP组件的Portfolio把该报表挂接到MP上面。 PgMp.mypm.net 离达到客户的最终需求只差最后一步了。客户希望该报表是自动每天更新的,但现在该报表是手工更新的,只有当打开Excel文件的时候,数据才会自动更新,保存成为Html,这样必须要人手每天去打开一次该Excel文件,有什么方法是可以让Excel每天定时自动运行?答案是Windows系统的任务计划。任务计划是Windows自带的一个程序,使用任务计划程序,可以安排任何脚本、程序或文档在最方便的时候运行。我们可以通过设定,设置每天某个特定时刻(例如晚上12点)会运行该Excel文件一次,这样,只要客户白天的时候查看该报表就会看到更新的数据。如果想看到最新的数据,只要手工运行一下Excel报表文件就可以了。至此,客户的站点信息统计图报表需求已经全部解决。 项目管理者联盟文章 项目管理者联盟 Excel自带的强大的二次开发工具VBA使得报表开发变得极为简单,其内置的大量对象函数也使得代码输入较为简单和方便,自带大量的帮助信息,再加上用户对Excel界面熟悉等特点,使得使用者在操作上得心应手。同时由于VBA程序可以兼容大多数的数据库类型,包括常见的SQL Server和Oracle,都能建立数据连接,从而可以从中读取数据。而且,Excel支持对多种文件格式的兼容,可以保存成为不同的文件格式,以便适合具体的需求。最后,我们来总结一下Excel制作报表过程和定期运行报表的机制; 项目管理论坛 项目管理者联盟 Excel制作报表过程: 项目管理者联盟 项目管理者联盟 一、 先要从PMDB数据库里面把报表所需要的原始数据抽取出来。 项目管理者联盟 二、 通过VBA把抽取出来的数据整理成统计数据。 项目管理者联盟 三、 根据统计数据绘制数据图表。 training.mypm.net 四、 通过VBA把数据表和数据图保存成为Html网页。 项目管理者联盟 项目管理者联盟 定期运行报表机制: 项目管理者联盟 www.mypm.net 通过Windows的计划任务,设定某个特定时间运行一次Excel报表文件,把运行后生成的网页文件存放在IIS目录底下,把该文件在IIS上的URL地址添加到MP组件里面的Portfolio上,用户就可以通过打开MP组件来查看报表信息。 项目管理者联盟 项目管理者联盟 本文为项目管理者联盟联盟会员原创文章,授权发布,非经同意不得转载!
栏目说明
《文库》栏目为项目管理者联盟网站核心栏目,收录了十大行业项目管理文章5000余篇,囊括了项目管理五个阶段、九个知识领域的相关文章,是广大项目管理爱好者学习的知识库,欢迎大家发表原创文章、转贴文章,或直接发给编辑 。须联盟会员且登陆 后才能发表文章。
更多>> 专题集锦
企业项目化管理
PMO实践与应用
如何处理项目客户关系
更多:
---请选择更多专题---
项目经理职业生涯规划
PPP项目融资与项目管理
IT项目风险管理
工程项目成本管理
CMMI与项目管理
BT项目管理
ERP项目管理
项目经理职业生涯规划
项目管理与知识管理
项目组合管理
游戏研发项目管理
项目经理职业化
软件项目收尾管理
项目群管理
业主工程项目管理
医药研发项目管理
敏捷项目管理
项目经理领导能力培养
软件项目质量管理
研发团队绩效管理
工程项目合同管理
工程项目管理之EPC
虚拟团队管理
如何处理项目客户关系
软件项目风险管理
软件工程与项目管理
软件项目管理流程
项目管理的核心项目经理
软件外包项目管理
项目管理与企业文化
项目启动阶段的管理
企业项目化管理
手机研发项目管理
航天国防科研项目管理
企业多项目管理模式
项目融资之ppp模式
项目成本核算体系建设
组织级项目管理
项目管理绩效考核
项目管理办公室(PMO)
项目组织结构设计与选择
做好工程项目收尾工作
能源工程项目管理
基础设施建设工程管理
房地产项目管理
国际工程索赔与反索赔
工程招投标管理
建筑工程项目分包管理
项目融资模式—BOT
工程项目管理—代建制
项目管理承包PMC
如何做好项目沟通计划
工程项目之总承包管理
项目需求管理
技术人员转做项目管理
如何开好项目会议
项目经理的素质和职责
工作分解结构WBS
无处不在的项目管理
工程项目管理FIDIC
项目管理办公室(PMO)
经理访谈
更多:
--请选择更多访谈--
张富贵:PgMP不仅要正确地做事,更要做正确的事
张冰:从PMP到PgMP :不畏浮云遮望眼,提升视野有高瞻
朱华睿:PgMP助力项目收益实现,业务价值提升
龚光耀:PgMP,一场刻骨铭心的修行
戴晓梅:项目集管理是组织战略落地的最佳途径
杨菲:PgMP,项目经理迷航时的灯塔
江锦:项目集管理应理论与实践相结合,体系与流程并重
郭炜:PgMP升维项目管理的视野和格局
商侠斐:金蝶软件建筑与地产事业部高级顾
王丽娟:项目集管理的核心目标是收益最大化
张良:只有跨越鸿沟才能实现自我突破
郑婕:项目集管理要有大局观,大处着眼小处着手
李进:PgMP助力我的职业生涯更上一层楼
肖站:某研发公司高级硬件研发工程师
班学朋:某集团公司PMO高级经理
石磊:维益食品(苏州)有限公司产品主管
王琦:某集团公司产品经理
缪际星:某生物医药行业公司PMO高级AI项目经理
高瑞泽:美团点评支付平台部PMO负责人
宋娉:不断升级与绽放的玫瑰
王林:同方软银项目集经理
苏东升:北京融云PMO负责人
郭颖:天津南大通用数据智能事业部PMO
侯飞冰:某知名消费金融公司PMO执行总监
王艳琼:中兴通讯营销项目管理总监 杨艳玲:安胜(天津)公司项目经理
郑昊:Modix中国区总经理
谢少斐:先声药业研究院项目管理部总监
胡向辉:飞利浦中国数字创新中心高级研发经理
张梅:江苏铁锚集团项目副总
黄红军:特变电工项目总监
黄怡琴:贝朗爱敦(上海)高级商务经理
黄春阳:哈电股份高级项目集经理
熊涛:新拓尼克(成都)公司大客户经理
褚娜:杜邦公司可持续解决方案事业部总监
刘黔龙:中兴通讯全球交付PMO首席项目管理总监
李莹:北京蓝吉新能源综合管理部主管
张明:罗克韦尔高级项目经理
中船三井总经理办公室公司级项目经理 朱碧霄
杰瑞油气工程集团副总裁JAMES谈项目组合管理
PgMP俞雷:费森尤斯医药全球研发中心项目总监
PgMP梅金钟:中元金信金融PMO业务副总裁
宣晓锋:访项目管理者联盟创始人
张建才:东软集团项目管理资深顾问
张明军:国际高级项目经理PgMP
靳朝阳:美国艾默生中国天然气业务PMO总监
杨朋艳:PMP学习经历与感受
张泽晨:PMP学习之旅
胡喻:IP衍生品高级产品经理
郑双华:利得金融服务集团项目总监
代先生 某高新技术企业项目经理
陈晨 北京众标公司产品经理
姜鹏 卓越集团国际高级项目经理
王作琪 PMP学习经历与感受
王善民 首批国际产品经理
王焘 宝峨机械产品经理
叶景发 京东高级项目经理
陈正洪:项目管理者联盟高级顾问及首批认证PgMP培训师
龚毅红:跨文化跨地域的项目团队建设的实践感悟
林侃:项目集管理提高项目成功率
刘颖:慧与(中国)有限公司项目集经理
党新宁:国际项目组合经理PfMP获得者
李京基:百硕同兴项目咨询总监
高志兴:极客三个爸爸智能环境科技公司副总裁
张会斌:高远华信科技有限公司总经理
谢志杰:产品管理首席顾问
利镇有:跨国实业投资集团项目总监/高级顾问
高屹:项目管理者联盟研究院高屹副院长
马旭晨:中国项目管理研究院副院长
乔东:金融IT系统项目管理专家
高国伟:中国移动通信研究院产品管理经理
郭富才:深圳汉捷研发管理咨询公司副总经理
赖一飞:武汉大学经济与管理学院副教授
蒋卫平:复杂工程项目管理
檀爱民:先声药物
林志国:高阳科技
隋继周:中智慧聚
陈永涛:PMI
刘文圣:久其软件
马健锋:易和元通
包晓春:普华科技
郑杰:外专局
潘东:神州数码
苗云升:中国电子
王守清:清华大学
陈信祥 薛 岩
赵春明: 复斯管理
陈芳: 神州数码
孔争昕 :上海奔驰
吴年发 :中国寰球
张大鹏:神州数码
林森:天津辰达工程.
高学武:中国石化.
李福和:上海攀成德.
武晔卿:瑞迪航科技.
孙磊:上海锐科无线.
潘津平:天津天士力.
蔡培堃??????.
曹蕾:第29届奥组委.
卢有杰:清华大学建.
石海东:北京视锐达.
崔惠钦:中国建筑工.
刘毛华:制造业项目.
占文松:制造业项目.
许江林:项目管理者.
符志民:中国航天科.
关一卓:中油吉林化.
王宇红:HP项目管理.
丁昌银:广州市建筑.
席相霖:中国科学院.
洪布坤:上海普华科.
丁荣贵:山东大学管.
侯岚:德创赛思工程.
王宇:英国格利资工.
曹德成:清华大学建.
李大明:英国WSP集.
李卫星:项目管理专.
王爱华:北京广联达.
何磊:神龙汽车有限.
陈虔:项目管理专家
曹济:项目管理专家
刘大双:项目管理软.
王树文:华南资讯科.
王守清:清华大学教.
吴之明:北京中科项.
卢毅访谈:合力金桥.
钱福培:国际项目管.
赵巍:神州数码中国.
王景山:制造业项目.
吴建中:西气东输工.
潘东:神州数码金融.
陈奕雍:游戏项目管.
刘景梅:朗讯公司项.
周小桥:项目管理专.
陈和兰:项目管理高.
黄绍良:项目管理专.
甄进明:项目管理专.
个人专栏
更多:
---请选择更多会员---
联盟会员专栏—朱华睿
联盟会员专栏—涂斌
联盟会员专栏—李志安
联盟会员专栏—程兴勇
联盟会员专栏—谢二菊
联盟会员专栏—张建才
联盟会员专栏—路仲滨
联盟会员专栏—尹义法
联盟会员专栏—Lily
联盟会员专栏—马琛
联盟会员专栏—肖杨
联盟会员专栏—高国伟
联盟会员专栏—张鲁峰
联盟会员专栏—张为
联盟会员专栏—高屹
联盟会员专栏—车飞扬
联盟会员专栏—高茂源
联盟会员专栏—戚安邦
联盟会员专栏—宋学军
联盟会员专栏—张志坚
联盟会员专栏—杨铭伟
联盟会员专栏—杨立东
联盟会员专栏—曹济
联盟会员专栏—丁荣贵
联盟会员专栏—侯利军
联盟会员专栏—刘羚
联盟会员专栏—齐保良
联盟会员专栏—周炳学
联盟会员专栏—周劲松
联盟会员专栏—王凌宇
联盟会员专栏—蒋昕炜
联盟会员专栏—贾宗元
联盟会员专栏—张保军
联盟会员专栏—高扬
联盟会员专栏—司馥声
联盟会员专栏—郑德辉
联盟会员专栏—潘东
联盟会员专栏—冷力强
联盟会员专栏—潘德有
联盟会员专栏—蒋卫平
联盟会员专栏—王志远
联盟会员专栏—赵玫梅
联盟会员专栏—郭致星
联盟会员专栏—孙晓枚
联盟会员专栏—濮立松
联盟会员专栏—张雪峰
联盟会员专栏—张连永
联盟会员专栏—吴党明
联盟会员专栏—于学勇
联盟高级顾问—吴之明
联盟高级顾问—强茂山
联盟高级顾问—蔚林巍
联盟高级顾问—乔 东
联盟高级顾问—杨光清
联盟高级顾问—黄绍良
联盟高级顾问—徐成彬
联盟高级顾问—熊培霖
联盟高级顾问—王景山
联盟高级顾问—陈和兰
联盟高级顾问—黄萌凌
联盟高级顾问—何 丰
联盟高级顾问—刘大双
联盟高级顾问—袁月建
联盟高级顾问—郑文彬
联盟高级顾问—周小桥
联盟高级顾问—甄进明
联盟高级顾问—胡允清
联盟高级顾问—沈 音
联盟高级顾问—许江林
联盟高级顾问—刘景梅
联盟高级顾问—卢 毅
联盟高级顾问—石海东
联盟高级顾问—侯利军
联盟高级顾问—黄堰江
联盟高级顾问—周坤坪
联盟高级顾问—李子健
联盟高级顾问—徐 非
联盟高级顾问—李大明
联盟高级顾问—马正肖
联盟高级顾问—郑承满
联盟高级顾问—孙爱军
联盟高级顾问—吴 超
联盟高级顾问—杜寿兴
联盟高级顾问—胡云峰
联盟顾问—人月神话
联盟高级顾问—王树文
联盟高级顾问—耿岚岚
联盟高级顾问—孙 武
联盟高级顾问—赵春明
联盟高级顾问—商蓉蓉
联盟高级顾问—刘 睿
联盟高级顾问—白思俊
联盟会员专栏—郭远刚
项目管理者联盟特刊
联盟特刊是对网站会员发行的内部刊物,刊物内容包括:案例及分析等,得到了会员好评。
电子期刊:
---请选择---
2017年01月
2016年11月
2016年09月
2016年07月
2016年05月
2016年03月
2016年01月
2015年11月
2015年09月
2015年07月
2015年05月
2015年03月
2015年01月
2014年08月
2014年06月
2014年04月
2014年01月
2013年12月
2010年10月
2010年09月
2010年08月
2010年07月
2010年06月
2010年05月
2010年04月
2010年03月
2010年02月
2010年01月
2009年12月
2009年11月
2009年10月
2009年09月
2009年08月
2009年07月
2009年06月
2009年02月
2009年01月
2008年12月
2008年11月
2008年10月
2008年09月
2008年08月
2008年07月
2008年06月
2008年05月
2008年04月
2008年03月
2008年02月
2008年01月
2007年12月
2007年11月
2007年10月
2007年09月
2007年08月
2007年07月
2007年06月
2007年05月
2007年04月
2007年03月
2007年02月
2007年01月
2006年12月
2006年11月
2006年10月
2006年09月
2006年08月
2006年07月
2006年06月
2006年05月
2006年04月
2006年03月
2006年02月
2006年01月
2005年12月
2005年11月
2005年10月
2005年09月
2005年08月
2005年07月
2005年06月
2005年05月
2005年04月
2005年03月
2005年02月
2004年11月
2004年10月
2004年09月
2004年08月
2004年07月
2004年06月
2004年05月
特刊下载:
---请选择---
13年01-03月
12年04-06月
11年07-09月
10年10-12月
10年04-06月
09年07-09月
09年01-03月
08年10-12月
08年07-09月
08年04-06月
08年01-03月
07年10-12月
07年07-09月
07年04-06月
07年01-03月
06年10-12月
06年07-09月
05年特刊
02年04-06月
02年10-12月
02年1-7合集
2017合刊
2016合刊
2015合刊
2014合刊
2010合刊
2009合刊
2008合刊
2004合刊
2005合刊
2006合刊
2007合刊
施工企业管理
《施工企业管理》创刊于1986年1月,中国施工企业管理协会主办,是反映施工企业管理杂志。
浏览往期:
---请选择---
2013年04月刊
2011年10月刊
2011年09月刊
2011年08月刊
2011年07月刊
2011年06月刊
2011年05月刊
2011年04月刊
2011年03月刊
2011年02月刊
2011年01月刊
2010年12月刊
2010年11月刊
2010年10月刊
2010年09月刊
2010年08月刊
2010年07月刊
2010年06月刊
2010年05月刊
2010年04月刊
2010年03月刊
2010年02月刊
2010年01月刊
2009年12月刊
2009年11月刊
2009年10月刊
2009年09月刊
2009年08月刊
2009年07月刊
2009年06月刊
2009年05月刊
2009年04月刊
2009年03月刊
2009年02月刊
2009年01月刊
2008年12月刊
2008年11月刊
2008年10月刊
2008年09月刊
2008年08月刊
2008年07月刊
2008年06月刊
2008年05月刊
2008年04月刊
2008年03月刊
2008年02月刊
2008年01月刊
2007年12月刊
2007年11月刊
2007年10月刊
2007年09月刊
2007年08月刊
2007年07月刊
2007年06月刊
2007年05月刊
2007年04月刊
2007年03月刊
2007年02月刊
2007年01月刊
2006年12月刊
2006年11月刊
2006年10月刊
2006年09月刊
2006年08月刊
2006年07月刊
2006年06月刊
2006年05月刊
2006年04月刊
2006年03月刊
2006年02月刊
2006年01月刊
2005年12月刊
2005年11月刊
2005年10月刊
建造师杂志
《建造师》杂志由清华国际工程项目管理研究院主办,是中国面向建设企业管理人的高端杂志。
浏览往期:
---请选择---
2011年04月刊
2011年03月刊
2011年02月刊
2011年01月刊
2010年11月刊
2010年09月刊
2010年07月刊
2010年05月刊
2010年03月刊
2010年01月刊
2009年11月刊
2009年10月刊
2009年09月刊
2009年08月刊
2009年07月刊
2009年06月刊
2009年05月刊
2009年04月刊
2009年03月刊
2009年02月刊
2009年01月刊
2008年12月刊
2008年11月刊
2008年10月刊
2008年09月刊
2008年08月刊
2008年07月刊
2006年12月刊
2006年11月刊
2006年10月刊
2006年09月刊
2006年08月刊
2006年07月刊
2006年06月刊