如何用 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 会有的那些列:任务、分组、工作日数和“依赖于”。日期是算出来的,不是输入的。

  1. 任务和工期

    三行,就像它们在 CSV 中那样:“网站审计与目标”(5)、“干系人访谈”(4)和“站点地图”(3)。“干系人访谈”在审计进行两天后开始,在“依赖于”列里写作 1SS+2。

  2. 设计链

    “线框图”等“站点地图”,“视觉设计”等线框图,而“设计签字确认”的工期为 0,这把它标记为里程碑。

  3. 内容作为独立的一条线

    “内容简报”只等“站点地图”,所以“撰写与编辑文案”和“图片与媒体”在设计进行的同时推进,而“将内容载入 CMS”要等模板、文案和媒体。

  4. 上线

    “重定向与 SEO 检查”、“质量保证与浏览器测试”和“客户评审”都在“上线”之前完成,“上线后修复”紧随其后。这里的每个日期都是由工期和“依赖于”列算出的。

运作方式

  1. 把表排成每行一项任务

    每项任务一行,并有一行表头来命名各列。“任务”(Task)是唯一必需的列。加上“工期”(Duration)表示以工作日计的长度,或加上“开始”(Start)和“结束”(End)表示日期。

  2. 用没有歧义的形式书写日期

    使用 yyyy-mm-dd,例如 2026-04-03。在 Excel 中,复制之前把该列设为文本或这种自定义日期格式,这样粘贴时就保持原样。

  3. 把依赖关系写成编号或名称

    在“依赖于”(Depends on)或“前置任务”(Predecessors)中,列出它所等待的任务编号,第一项任务算 1,用逗号分隔。其他类型加 SS、FF 或 SF,以工作日计的延隔用 +n 或 -n。

  4. 使用 QueryChart 识别的名称

    任务、开始、结束、工期、依赖于、进度、分组以及人员或负责人(Task、Start、End、Duration、Depends on、Progress、Group、People 或 Owner)都能识别,常见的同义词也可以。名为 Status 的列按进度读取,只有百分比或 Done 一词能被理解。

  5. 复制并粘贴到甘特图表里

    选中含表头行的整张表,复制,粘贴到甘特图表的第一个单元格。表头行本身不会写入;每一列进入它所指名的那一列。

  6. 查看被拒绝的内容

    无法读取的值,例如无法识别的日期、“依赖于”中的未知任务或循环,会被报告并略去。在表里修正它。然后检查完工日期并打开关键路径。

应避免的错误

  • 表头行识别出的名称不足两个

    如果第一行没有命名至少两个可识别的列,它就会被当作数据粘贴。请把表头改成上面列出的名称。

  • 依赖于表中没有的任务

    “依赖于”只能指向图中存在的任务。对不存在的行的引用会被拒绝,该任务没有前置任务。

  • 依赖关系中的循环

    如果 B 等 A,任务 A 就不能等任务 B。循环会被检测到,闭合它的链接以虚线绘制,且不参与排期。

  • 只用日期作为输入

    每项任务都有开始和结束日期的表可以得出工期,但如果“依赖于”也留空,你得到的就是一幅图画:日期一变,没有东西跟着动。请补上依赖关系。

把你的任务表粘贴成甘特图

把这个网站项目作为你自己的图打开,然后把你自己的行粘贴到它的表上。

把你的任务表粘贴成甘特图

相关指南

常见问题

用 CSV 创建甘特图需要哪些列?

一个任务名称,加上工期或开始和结束日期。“依赖于”、分组、人员和进度是可选的。表头行命名各列;顺序无关紧要。

可以上传 Excel 文件吗?

目前不行。从 Excel 复制这些行(含表头行),粘贴到甘特图表里。

为什么我的日期读反了?

因为数字日期按语言的顺序读取。像 3/4 这样的日期在英文中是 3 月 4 日,在丹麦语等语言中则是 4 月 3 日,读反会让计划移位。请使用 yyyy-mm-dd,或带月份名称的写法。

依赖关系在表里怎么写?

写成它所等待的任务的编号或名称,用逗号分隔,可带类型和延隔。3, 5SS+2 表示等任务 3,并在任务 5 开始两个工作日后开始。

它会读取“状态”列吗?

会,当作进度。百分比或 Done 一词可以理解;像“进行中”这样的其他说法不能。

本指南所用的模板

网站项目甘特图模板:从审计到上线 — 可编辑的网站项目甘特图:审计、站点地图、线框图、设计、开发、内容、测试与上线,含依赖关系和里程碑。修改工期,日期随之更新。

网站项目甘特图: 调研 → 设计 → 开发 → 内容 → 上线
如何用 Excel 或 CSV 数据生成甘特图