Microsoft Project (或 MSPROJ)是一个国际上享有盛誉的通用的项目管理工具软件,凝集了许多成熟的项目管理现代理论和方法,可以帮助项目管理者实现时间、资源、成本计划、控制。 用MS Project软件排定计划很简单,跟踪计划更方便,因为在Project中可以一键设置基准。有了基准,就可以轻松地对比当前计划和基准之间的差异了,而在Project中有现成的列可以直接查看【完成时间差异】、【开始时间差异】、【工期差异】、【成本差异】、【工时差异】等等。 那么有的同学可能想查看,任务截止到当前日期时按照基准计划应该完成的百分比,能不能在Project软件中实现呢? 举个例子,为了让大家更容易理解,我们采用全年无休的日历(每一天都是上班时间),某任务的基线开始时间是4月1日,基线完成时间是4月10日,工期10天,如果当前日期来到了4月3日(可能是上午,也可能下午),那么它应该完成前一天4月2日的工作量,即20%,当然这是假设每天的工作量都是均匀分布的。能不能在Project软件中显示出按照基准计划该任务应该完成20%呢? 通过自定义列是可以实现的。 我们首先定义一下规则,如下:
我们随便创建一个简单的项目演示一下。如图1所示,整个项目采用全年无休的日历,计划中只有五个任务,当前日期来到了3月25日,任务至少应该完成前一天即3月24日的工作量。并且我们设置了基准,从甘特图上能看出来,图1是从【跟踪甘特图】视图截取的图片,每个任务对应两个条形图,下面那条灰色的代表基准。 ? 图1 回到我们的主题,我们假定来到3月25日后,任务至少完成前一天3月24日的工作量,按照基准计划去衡量的话,任务应该应该完成的百分比是
我们点击任意一列,鼠标右键选择“自定义字段”,就会弹出自定义域窗口,如图2所示。首先,选择合适的域类型很重要,由于Project软件中自定义域的类型中,没有百分比这种类型,所以我们只能用数字这种类型了,举个例子,任务A应该完成的百分比是75%,我们用这个自定义列计算出来只能显示0.75,因为软件中确实没有百分比这种自定义的域类型。 然后我们可以随便选择一个数字列,比如数字1,然后可以给它重命名一下,不重名也没关系。 ? 图2 自定义列 域类型选择数字 接下来最重要的是设置公式了,在下面的自定义属性中点击公式。因为不同的条件将返回不同的值,所以我们需要用到一个IIF函数,类似于Excel软件中的IF函数。点击公式窗口下方的【函数】-【常规】,然后选择IFF函数,如图3所示。 ? 图3 IIF函数 接下来我们输入这样的公式 IIf([当前日期]<[比较基准开始时间],0,iif([当前日期]>[比较基准完成时间],1,ProjDateDiff([比较基准开始时间],[当前日期])/[比较基准工期])) 因为截图是从Project 2010版本中截取的,如果大家使用的是Project 2013或之后的版本,由于列名称(中文名称)有变化,需要将上面公式中的“比较基准”都替换为“基线”,即 IIf([当前日期]<[基线开始时间],0,iif([当前日期]>[基线完成时间],1,ProjDateDiff([基线开始时间],[当前日期])/[基线工期])) 设置完公式后,点击确定。再在自定义域窗口中点击确定。 自定义域已经设置完毕,我们现在需要将它显示出来,在需要的位置右键插入列【数字1】,如图4所示 图4 这样就实现我们的目的了。 上面我们讲的是按照基准计划去衡量应该完成的百分比,如果只是和当前计划去对比的话,在设置公式的时候,可以这样输入: IIf([当前日期]<[开始时间],0,iif([当前日期]>[完成时间],1,ProjDateDiff([开始时间],[当前日期])/[工期])) 也就是把之前的比较基准都去掉。 [开始时间],0,iif([当前日期]>[基线开始时间],0,iif([当前日期]>[比较基准开始时间],0,iif([当前日期]>在最新版本的Project中,微软提供了更佳的用户体验。 |
温馨提示:喜欢本站的话,请收藏一下本站!