如何用 Excel 或 CSV 数据生成甘特图
如何把 Excel 或 CSV 中的任务表变成甘特图:可识别的列名、日期和依赖关系如何读取,以及单元格被拒绝时怎么办。
一张任务表只要有任务名称,加上工期或开始和结束日期,就能成为甘特图。把它粘贴到甘特图表里,每一列都按表头匹配。
简而言之
- 最低要求:任务名称,加上工期或开始和结束日期。
- 第一行按名称匹配到各列,顺序不限;至少要识别出两列。
- 日期用 ISO 格式(yyyy-mm-dd)或把月份写成文字,数字日期按你所在语言的顺序读取。
- “依赖于”接受任务编号或名称,可带 SS、FF 或 SF 和延隔:3, 5SS+2。
- 目前没有文件上传:复制这些行并粘贴到表里。
任务表需要什么,以及它如何被读取
甘特图需要的数据比人们以为的少。每项任务需要一个名称。要画条形,需要一个工期,或者能算出工期的开始和结束日期。其余都是可选的:它所等待的任务、分组、负责人和进度数字。含这些列的电子表格或 CSV,已经是甘特图的大部分了。
把这样的表粘贴到甘特图表里,QueryChart 就会读取它。如果第一行写明了列名,每一列都按表头匹配,不管顺序如何。它能识别的名称包括:任务用 Task、Name 或 Activity(任务);Start 或 Start date(开始);最后一个工作日用 End、Finish 或 Due(结束);Duration、Days 或 Length(工期);Depends on、Predecessors 或 Dependencies(依赖于);Progress、Complete 或 Status(进度);Group、Phase 或 Section(分组);以及 People、Owner 或 Assigned to(负责人)。中文界面名称与这些英文名称都可使用。至少要识别出两列,名称未被识别的列会被报告并跳过。
有两件事容易绊倒人。日期按 ISO 格式或你所在语言的数字顺序读取,月份名称也可以,但像 3/4 这样的日期可能是 3 月 4 日,也可能是 4 月 3 日,读反会让整份计划移位,所以请用 yyyy-mm-dd。依赖关系写成任务编号或名称,用逗号分隔,可带类型和延隔,所以 3, 5SS+2 表示该任务等任务 3,并在任务 5 开始两个工作日后开始。
甘特图目前没有文件上传,所以请复制这些行(包括表头行)再粘贴。下面的示例展示一个网站项目的最终结果,以及生成它的表。
一个网站项目,从表到排期
十七行,带有 CSV 会有的那些列:任务、分组、工作日数和“依赖于”。日期是算出来的,不是输入的。
任务和工期
三行,就像它们在 CSV 中那样:“网站审计与目标”(5)、“干系人访谈”(4)和“站点地图”(3)。“干系人访谈”在审计进行两天后开始,在“依赖于”列里写作 1SS+2。
设计链
“线框图”等“站点地图”,“视觉设计”等线框图,而“设计签字确认”的工期为 0,这把它标记为里程碑。
内容作为独立的一条线
“内容简报”只等“站点地图”,所以“撰写与编辑文案”和“图片与媒体”在设计进行的同时推进,而“将内容载入 CMS”要等模板、文案和媒体。
上线
“重定向与 SEO 检查”、“质量保证与浏览器测试”和“客户评审”都在“上线”之前完成,“上线后修复”紧随其后。这里的每个日期都是由工期和“依赖于”列算出的。
运作方式
把表排成每行一项任务
每项任务一行,并有一行表头来命名各列。“任务”(Task)是唯一必需的列。加上“工期”(Duration)表示以工作日计的长度,或加上“开始”(Start)和“结束”(End)表示日期。
用没有歧义的形式书写日期
使用 yyyy-mm-dd,例如 2026-04-03。在 Excel 中,复制之前把该列设为文本或这种自定义日期格式,这样粘贴时就保持原样。
把依赖关系写成编号或名称
在“依赖于”(Depends on)或“前置任务”(Predecessors)中,列出它所等待的任务编号,第一项任务算 1,用逗号分隔。其他类型加 SS、FF 或 SF,以工作日计的延隔用 +n 或 -n。
使用 QueryChart 识别的名称
任务、开始、结束、工期、依赖于、进度、分组以及人员或负责人(Task、Start、End、Duration、Depends on、Progress、Group、People 或 Owner)都能识别,常见的同义词也可以。名为 Status 的列按进度读取,只有百分比或 Done 一词能被理解。
复制并粘贴到甘特图表里
选中含表头行的整张表,复制,粘贴到甘特图表的第一个单元格。表头行本身不会写入;每一列进入它所指名的那一列。
查看被拒绝的内容
无法读取的值,例如无法识别的日期、“依赖于”中的未知任务或循环,会被报告并略去。在表里修正它。然后检查完工日期并打开关键路径。
应避免的错误
表头行识别出的名称不足两个
如果第一行没有命名至少两个可识别的列,它就会被当作数据粘贴。请把表头改成上面列出的名称。
依赖于表中没有的任务
“依赖于”只能指向图中存在的任务。对不存在的行的引用会被拒绝,该任务没有前置任务。
依赖关系中的循环
如果 B 等 A,任务 A 就不能等任务 B。循环会被检测到,闭合它的链接以虚线绘制,且不参与排期。
只用日期作为输入
每项任务都有开始和结束日期的表可以得出工期,但如果“依赖于”也留空,你得到的就是一幅图画:日期一变,没有东西跟着动。请补上依赖关系。
把你的任务表粘贴成甘特图
把这个网站项目作为你自己的图打开,然后把你自己的行粘贴到它的表上。
相关指南
常见问题
用 CSV 创建甘特图需要哪些列?
一个任务名称,加上工期或开始和结束日期。“依赖于”、分组、人员和进度是可选的。表头行命名各列;顺序无关紧要。
可以上传 Excel 文件吗?
目前不行。从 Excel 复制这些行(含表头行),粘贴到甘特图表里。
为什么我的日期读反了?
因为数字日期按语言的顺序读取。像 3/4 这样的日期在英文中是 3 月 4 日,在丹麦语等语言中则是 4 月 3 日,读反会让计划移位。请使用 yyyy-mm-dd,或带月份名称的写法。
依赖关系在表里怎么写?
写成它所等待的任务的编号或名称,用逗号分隔,可带类型和延隔。3, 5SS+2 表示等任务 3,并在任务 5 开始两个工作日后开始。
它会读取“状态”列吗?
会,当作进度。百分比或 Done 一词可以理解;像“进行中”这样的其他说法不能。
