如何在 Excel 中制作甘特图,以及何时该用甘特图工具
如何用堆积条形图在 Excel 中做甘特图、Excel 做不到什么(没有依赖关系,不会自动重排),以及如何把同一张任务表变成 QueryChart 里的甘特图。
Excel 没有甘特图类型。常用方法是隐藏第一个数据系列的堆积条形图,它能画出条形,却不知道任何依赖关系。
简而言之
- Excel 没有甘特图类型:标准做法是隐藏开始日期系列的堆积条形图。
- 条形来自手工输入的开始日期和工期,所以一次延误意味着重新输入其后的每个日期。
- 除非你自己搭建,Excel 不知道依赖关系、里程碑、分组或关键路径。
- 复制你的任务表,粘贴到 QueryChart 的甘特图表里:如果第一行写明了列名,它们会按名称匹配。
- 甘特图目前没有文件上传,也不支持 Microsoft Project 文件。
Excel 的做法是怎么回事,又在哪里到头
Excel 的图表类型里没有甘特图。人们所说的 Excel 甘特图,其实是基于一张含开始日期和工期的任务表建成的堆积条形图。第一个系列,即开始日期,被设为不可见,于是第二个系列,即工期,就以条形的形式悬浮在日期轴的正确位置上。任务顺序被反转,使第一项任务排在最上面。微软还提供甘特项目规划模板,把同样的思路包进带公式和条件格式的工作表里。
这种方法适合不怎么变动的小而简单的排期。当排期会变时它就不合适了,原因只有一个:条形是根据你输入的开始日期和工期画出来的,工作簿里没有任何东西知道一项任务依赖另一项。如果任务 3 推迟了一周,你就得重新输入任务 4 的开始日期,再是任务 5,再是后面的每一项。依赖关系、作为独立概念的里程碑、关键路径和今天线,都得靠自己用公式和格式搭出来,或者干脆不要。
甘特图工具则把这件事倒过来。你输入工期和依赖关系,日期由计算得出。你在 Excel 里已有的表格就是大部分输入:任务名称和工期。下面的步骤先做出 Excel 版本,让你确切看到得到的是什么,然后展示如何把同一张表带进 QueryChart。甘特图目前没有文件上传;你在 Excel 中复制这些行,粘贴到图旁边的表里即可。
下面的示例展示了对一份活动计划这样粘贴之后的结果:一张含任务、工期和依赖关系的表,以及由此得出的排期。
同一张表,变成算出来的甘特图
一份含十五项任务的活动计划。各列就是你在 Excel 里会有的那些:任务、分组、工期和它在等什么。日期是算出来的。
任务及其工期
“设定预算与目标”、“选定并预订场地”和“日期与场地确认”,工期分别为 3、8 和 0 个工作日。在 Excel 里你要为每项输入开始日期;在这里你只需输入工期和它紧随的任务。
什么在等什么
“邀请并确认演讲嘉宾”在预算之后开始,与场地同时进行,而“制定议程”既等它,也等“日期与场地确认”。“餐饮与音视频订购”等议程。
重叠与汇合
“推广与邮件”在“活动页面与报名开放”两天后开始,所以它与报名期重叠。“工作人员与嘉宾简报”和“报名期”都必须在“活动日”之前结束。
后续工作与日期
“感谢邮件”和“反馈问卷”都紧随“活动日”,而“总结报告”要等它们两个。把“活动日”固定在它的真实日期上,如果之前的工作无法按时完成,图表会将其标记,这是手工输入日期的 Excel 甘特图无法告诉你的。
运作方式
在 Excel 中建表
把任务名称放在 A 列,开始日期放在 B 列,以天计的工期放在 C 列。如果需要,在 D 列加上结束日期,即开始日期加工期。
插入堆积条形图
选中任务名称、开始日期和工期,然后插入堆积条形图。开始日期和工期成为两个系列,首尾相接地绘制。
隐藏开始日期系列
把第一个系列,即开始日期,设置为无填充。工期现在悬浮在轴上的正确位置。把坐标轴最小值设为第一个开始日期。
让第一项任务排在最上面
勾选纵坐标轴上“逆序类别”的选项,使第一项任务位于最上面。
清楚你没有什么
工作簿不会链接任务。你可以加一列前置任务,但没有东西会读取它:改变一个工期,不会移动任何其他条形。
或者把表粘贴到 QueryChart
打开一个甘特图,从 Excel 复制这些行(含表头行),粘贴到“任务”列中。任务(Task)、开始(Start)、结束(End)、工期(Duration)、依赖于(Depends on)、进度(Progress)、分组(Group)和负责人(Owner)按名称匹配,英文列名同样可识别;日期按 ISO 格式或你所在语言的数字顺序读取,像 3/4 这样的日期可能被读反。
应避免的错误
粘贴顺序有歧义的日期
写成 3/4 的日期按你所在语言的顺序读取,可能是 3 月 4 日,也可能是 4 月 3 日。复制之前,请在 Excel 中把日期列设为 yyyy-mm-dd 格式。
粘贴“状态”列
QueryChart 把名为 Status(状态)的列当作进度读取,它能理解百分比或 Done 一词。像“进行中”这样的其他说法无法理解,该单元格会被标出。
期待 Excel 里的依赖关系会跟过来
“前置任务”列会按任务编号或名称当作“依赖于”读取。如果你在 Excel 里只是用箭头或批注画出依赖关系,它们不在单元格里,所以不会跟过来。
保留两份副本
计划进入 QueryChart 之后,就在那里编辑。如果还同时编辑 Excel 那份,两者就会不一致。
把你的 Excel 表变成甘特图
把这份活动计划作为你自己的图打开,然后把你自己的行粘贴到它的表里。
相关指南
常见问题
Excel 有内置的甘特图吗?
没有叫甘特图的图表类型。标准做法是隐藏开始日期系列的堆积条形图,微软还发布了 Excel 的甘特项目规划模板。
Excel 的甘特图能显示依赖关系吗?
靠它自己不行。条形是根据开始日期和工期画出的,除非你自己写公式,否则没有东西把一项任务链接到另一项。
如何把 Excel 甘特图转换到 QueryChart?
从工作表复制含任务、工期和前置任务的行,带上表头行,粘贴到 QueryChart 的甘特图表里。目前没有文件上传。
QueryChart 能做到而 Excel 做不到的是什么?
由工期和依赖关系算出每个日期,支持带延隔的四种依赖类型,显示关键路径,绘制里程碑和阶段,并让你在图上拖动条形。它不做资源平衡或成本跟踪,而电子表格只要你肯搭建就能做到。