周五下午5点半,项目经理老王在群里发了第7条消息:"小刘,前端那个模块什么时候能完?"没人回。
他打开自己那张手填的项目进度表——颜色是自己手动刷的,开始日期改了一版又一版,完成百分比写的是"大概80%",延期任务旁边画了个红圈,但到底是延期几天自己都说不清。
老板推门进来:"下周一的进度汇报准备好了吗?"老王看了眼那张手动涂色的表,心里想:又要熬夜做PPT了。
甘特图不是用来画的,是用来算的。 你只管填日期和进度,Excel替你把进度条拉好、延期标红、今天在哪一目了然。
今天4招,让你的项目表从"每天手动调格式"变成"打开就自动更新"。
招一:条件格式做日期进度条——左边开始、右边结束,中间自动亮
场景:项目表有任务名、开始日期、结束日期三列。想在右侧的日期区域自动显示每个任务的进度条——哪天开始、哪天结束,中间的格子自动填充颜色。手动一格一格刷?10个任务×30天=300格,刷到手酸。
步骤(4步搞定):
① 在表格右侧建日期表头:G1输入项目第一天的日期(如 2026/7/1),H1输入 =G1+1,右拉填充到结束日期
② 日期表头设短格式:选中G1:AK1 → Ctrl+1 → 自定义 → 输入 d → 只显示日数(1、2、3…)
③ 设置条件格式:选中进度条区域G2:AK20 → 条件格式 → 新建规则 → 使用公式 → 输入:
```
=AND(G$1>=$C2,G$1<=$D2)
```
其中 G$1 是日期表头(锁行不锁列),$C2 是开始日期(锁列不锁行),$D2 是结束日期
④ 设置格式:填充色选蓝色(#4472C4),字体色也选蓝色(让日期数字融合进进度条)
效果:改一次开始/结束日期,进度条自动伸缩——不用手动刷格子。
公式:=AND(G$1>=$C2,G$1<=$D2)(放在条件格式→使用公式确定要设置格式的单元格)
兼容性:Excel 2007+ / WPS 全版本
踩坑:
• 日期表头必须用 G$1(锁行不锁列),写成 $G$1 锁了列→右拉时永远看G列→第一条正常,其余全空
• 开始/结束日期必须用 $C2(锁列不锁行),写成 C2→右拉时日期列一起漂移→进度条对不上
• 日期表头格式不能设为 yyyy/m/d,太宽撑爆列→必须设 d 只显示日数
招二:TODAY()自动画"今天线"——永远知道项目走到了哪天
场景:甘特图做好了,但"今天"在哪?项目管理最怕不知道当前在哪一天——今天该谁干活、谁该交活了,翻日历对日期太慢。
步骤(3步搞定):
① 在原有条件格式上再加一条规则,选中同一区域G2:AK20 → 条件格式 → 新建规则 → 使用公式:
```
=G$1=TODAY()
```
② 设置格式:填充色选红色(#C0392B),字体色选白色粗体
③ 调整规则顺序:把"今天线"规则拖到第一行(条件格式→管理规则→上移箭头),让它覆盖进度条颜色——今天那一列永远是红色,不管有多少任务经过
效果:每天打开表格,红色竖线自动出现在"今天"那一列——不需要看日历,不需要手动标记,Excel替你盯着时间。
进阶:逾期自动标红
再加一条规则来标记已逾期但未完成的任务:
```
=AND(G$1>=$C2,G$1<=TODAY(),$E2<1)
```
其中 $C2 是开始日期,TODAY() 是今天,$E2 是完成百分比列(<1表示未完成)。这条规则的意思是:从开始日期到今天之间、任务还没完成的所有格子→标深红色。放在规则顺序第二位,早于进度条。
公式:=G$1=TODAY() / =AND(G$1>=$C2,G$1<=TODAY(),$E2<1)
兼容性:TODAY() 返回电脑系统日期,Excel 2007+ / WPS
踩坑:
• 条件格式规则顺序决定优先级!今天线必须在第一行,逾期在第二行,进度条在第三行——否则今天的红色被进度条蓝色覆盖,看不到
• TODAY() 是易失函数,每次打开文件自动刷新。电脑日期不对→今天线位置全错——先检查右下角系统时间
• 休假/周末也标红?可在旁边加一列"工作日排除",进阶可用 =AND(条件,WEEKDAY(G$1,2)<6) 排除周六日
招三:REPT函数做文字版进度条——不用条件格式,一个公式出进度
场景:给领导发邮件汇报,不能发一整张Excel表。想把进度条写成文字——"████░░░░ 60%",放进邮件正文里,醒目又专业。
步骤(2步搞定):
① 在F列(完成百分比旁)输入公式:
```
=REPT("█",E2*10)&REPT("░",10-E2*10)&" "&TEXT(E2,"0%")
```
其中 E2 是完成百分比(如0.6=60%),E2*10 算出6个实心方块,10-E2*10 算出4个空心方块
② 下拉填充,所有任务自动生成文字进度条
进阶缩放:如果进度条太长,把 *10 改成 *20 变成20格精度更高;太短改成 *5 变成5格更紧凑。
公式:=REPT("█",E2*10)&REPT("░",10-E2*10)&" "&TEXT(E2,"0%")
兼容性:REPT函数 Excel 2003+ / WPS 全版本(最古老函数之一,兼容性无敌)
踩坑:
• E2必须是小数(0.6),不是整数(60)——写成60会算出600个方块,单元格直接爆炸。解决:如果有%格式的60%,E2实际存储值就是0.6
• REPT结果超过单元格宽度→看不到,不如缩小总格数(*10改*5)
• 特殊字符█在某些字体下显示为方框→设置F列字体为微软雅黑或宋体
• 复制文字进度条粘贴到邮件/微信→如果显示乱码,右键→粘贴为纯文本(或Ctrl+Shift+V)
招四:数据验证+条件格式联动——完成百分比自动变色,一眼看穿状态
场景:项目表里每个任务进度不一样——有的刚10%、有的100%完成、有的延期了但还在填50%。只看数字不够直观,老板要看"一眼就知道谁拖后腿"。
步骤(3步搞定):
① 状态列加数据验证:选中任务状态列(如B2:B20)→ 数据 → 数据验证 → 序列 → 来源输入 未开始,进行中,已完成,延期 → 确定
② 设置条件格式整行标色:选中全表数据区A2:G20 → 条件格式 → 新建规则 → 使用公式 → 依次添加4条规则:
| 规则 | 公式 | 填充色 |
|---|---|---|
| 已完成(绿) | `=$B2="已完成"` | 浅绿色 |
| 延迟(红) | `=AND($B2<>"已完成",$D2<TODAY())` | 浅红色 |
| 进行中(蓝) | `=$B2="进行中"` | 浅蓝色 |
| 未开始(灰) | `=$B2="未开始"` | 浅灰色 |
③ 规则顺序:延迟(红)放第一行→已完成(绿)第二→进行中(蓝)第三→未开始(灰)第四
关键逻辑:延迟规则包含"已完成排除"——已完成的任务即使结束日期早于今天也不算延迟。顺序必须延迟第一,否则已完成任务因为日期已过被标红覆盖绿色。
公式:=$B2="已完成" / =AND($B2<>"已完成",$D2<TODAY())
兼容性:条件格式+数据验证 Excel 2007+ / WPS
踩坑:
• 延迟规则条件必须 $B2<>"已完成"——否则已完成的历史任务全部标红,明明是正常交付
• 条件格式公式里 $B2(锁列不锁行)是正确写法,写成 $B$2 整表全部看B2这一个单元格→所有人同一颜色
• 规则顺序是优先级!延迟必须第一,已完成第二——Excel从上到下判断,命中第一条就停
• 数据验证拦不住复制粘贴(老问题了),粘贴时右键→选择性粘贴→数值
进阶联动:4招串联打造"打开就更新"的项目仪表板
① 招一(地基):条件格式日期进度条,开始→结束自动填充,日期表头 d 格式
↓
② 招二(时间轴):TODAY()红色今天线 + 逾期深红高亮,每天自动定位
↓
③ 招三(汇报层):REPT文字进度条,复制粘贴到邮件/微信/PPT
↓
④ 招四(管控层):四色状态标色,延迟红色整行高亮,一眼定位问题任务
完整流程:填任务名+开始日期+结束日期+完成百分比 → 日期进度条自动生成 → 今天线自动定位 → 文字进度条自动出 → 状态标色自动提醒 → 每天只改完成百分比,其余全自动更新
高频场景
场景1:5人小团队周报
填7月任务+日期 → 招一进度条自动拉出来 → 招二红色今天线一眼看到"到哪了" → 每周一开会前截图发群里,不用额外做PPT
场景2:领导要邮件汇报
从Excel里复制招三的文字进度条(████░░░░ 60%),直接粘贴到邮件正文——不用截图、不用画图、不用解释
场景3:跨部门大项目(20+任务)
招四状态自动标色 → 延迟任务整行红 → 点击红色行筛出来 → 逐条问责任人:什么原因?什么时候补?
避坑指南(5个)
坑1:日期表头 $ 号写错方向
G$1 锁行不锁列(日期行固定)→ 正确。$G$1 锁行锁列→右拉所有列看同一天→进度条只亮一列。$C2 锁列不锁行(开始日期列固定)→ 正确。口诀:表头锁行,数据锁列。
坑2:条件格式规则顺序混乱
今天线没放第一条→被进度条蓝色压住看不到。逾期没放前面→已完成任务被标红。管理规则对话框里,拖最上面的优先级最高。
坑3:REPT的E2是百分比不是整数
E2显示60%实际存的是0.6,E2*10=6 个方块 → 正确。如果E2存的是60,E2*10=600 个方块 → 单元格崩溃。解决:别手动输60,用数据验证限0~1小数。
坑4:TODAY()日期不同步
今天线位置对应电脑右下角日期。同事电脑日期不对→他看到的今天线跟你不一样。用之前检查系统时间。
坑5:延迟规则忘记排除"已完成"
=$D2<TODAY() 的意思是:只要结束日期早于今天就标红——连一年前按时交付的老项目都变红了。必须加 AND($B2<>"已完成",$D2<TODAY()),把已完成的正常任务排除。
1. 甘特图不是用来画的,是用来算的——你只管填日期填进度,Excel替你把进度条拉好、今天线标红、延迟自动报警。
2. 项目管理最危险的不是延期,是那永远填不准的"大概80%"——差1%没人看出来,差到最后一天所有人来问你。
3. 条件格式的三个 $ 号,写对了是自动化,写错了是全员同色——表头锁行(G$1),数据锁列($C2),口诀背下来少加三天班。
4. 老板不看日期看颜色:绿=放心、红=救命、蓝=进行中、灰=还没动。打开表格3秒看懂一个项目的命。
5. 用嘴问进度是项目经理,用条件格式管进度是项目总监——前者每天群发"什么时候完",后者打开表格全知道。
本文配套练习模板已上架「华杰办公助手」小程序:
→ 微信搜索「华杰办公助手」或点击 华杰办公助手
→ 模板中心搜索【80】即可找到本期模板
→ 边学边练,会员免费下载全部模板
你现在的项目进度表是怎么做的?手动刷颜色、网上找的模板、还是直接用Project?有没有因为进度表没更新被领导批评过?评论区聊聊,点赞最高的送甘特图模板👇
#Excel技巧 #项目管理 #甘特图 #条件格式 #TODAY函数 #REPT函数 #项目进度 #办公自动化 #进度跟踪 #WPS