Excel进阶:按需制作灵活可变的工作计划表
更新时间:2020-07-27 10:51:27 浏览次数:255+次每个月都是从1号开始,但每个月的总日期却不一定相同,有30天也有31天的,另外每个月的1号也不一定正好就是周一。这样当我们使用固定格式制作周或者月计划时,就需要根据每个月(每周)的实际情况进行调整,比如月末总结默认安排在每月最后一天,但是如果该天是周六休息,计划就需要更改到周一或者提前到周五完成。每月计划都要手动调整显然极为不便,现在借助Excel函数,我们可以轻松打造出可变的Excel(本文以2016版为例)工作计划表来。
首先按提示制作一个计划工作表的模板,在A1输入计划年份,B1输入月份数字,C1输入“月工作计划字样”。接着在C3输入公式“=IF(DAY(DATE($A$1,$B$1+1,0))<COLUMN(A1),””,COLUMN(A1))”,在C2输入公式“=IF(C3=””,””,TEXT(DATE($A$1,$B$1,C3),”aaa”))”,设置完毕,C3会自动显示1日,同时在C2显示当日对应的星期(图1)。
图1 设置公式
小提示:IF(DAY(DATE($A$1,$B$1+1,0))<COLUMN(A1),””,COLUMN(A1)):一个IF条件嵌套函数,这里先使用DATE函数来获取日期数值,然后DAY函数来显示日期。比如在C3中,DATE选择年月是2019年1月,则在C3中显示1月1日。同理,IF(C3=””,””,TEXT(DATE($A$1,$B$1,C3),”aaa”))则用来显示对应日期是星期几。
当我们选择不同年份、月份时,每月1号显示的的数值都是不同的,上述函数会自动根据实际日期显示不同的数值,大家可以打开系统日期进行核对看是否正确(图2)。
图2 选择不同年份和月份后的显示
因为月份只有1~12,为了方便我们选择不同的月份快速生成任务计划表,这里可以对B1设置数据有效性。选中A17,在A17~A28依次填充1~12的数值作为月份的选择。选中B1,点击“数据→数据验证→数据验证”,在打开窗口的验证条件中选择“序列”,来源选择“A17:A28”的数据源(图3)。
图3 数据验证设置
现在返回Excel窗口,日期设置为2019年1月,然后选中C2、C3,依次将其向右拖动填充公式,将C2和C3填充到AG列(即1月31日处),可以看到随着数据的填充,日期上方的星期数据也会随着同步填充(图4)。
图4 填充数据
因为很多公司周六、周日为非工作日,为了方便我们对周六、周日的识别,这里还可以使用条件格式对周六、周日的数据进行颜色的填充。选中第二行数据,点击“开始→条件格式→突出显示单元格的规则→文本包含”,在打开的窗口中输入“六”,设置为选择自定义格式,将符合条件的单元格填充为绿色显示(图5)。
图5 条件格式设置
操作同上,再将包含“日”的单元格的填充为红色文本,这样本月里包含周六、日的的日期就会自动填充为上述设置的醒目颜色(图6)。
图6 条件格式设置效果
以后当我们需要制作月度工作计划表的时候,打开上述文档后只要在B1下拉列表选择自己需要的月份,上述日期和星期数据会同步发生变化,我们只要按自己实际计划填入相应的文本数据即可。可以看到当我们选择2月份,数据只会自动显示到2月28,这样每个月的工作计划表只要在B1选择需要的月份即可,而且由于有星期的醒目提示,工作就不会安排在周六、周日的休息时间了(图7)。
图7 选择月份计划工作表
上述方法是在工作表中单独生成每月的工作表,如果要在一个文档中生成一年12个月的工作计划表,我们同样可以通过填充的方式实现。将A1:C4区域下拉填充,接着在B5处输入“=B1+1”,在C6输入公式“=IF(C7=””,””,TEXT(DATE($A$1,$B5,C7),”aaa”))”,即将原来公式中的“$B$5”更改为“$B5”,这样下拉公式的时候,月份就会自动进行填充,函数读取的月份参数才不会错误,原来公式是锁定B1的显示。同样将C5公式更改为 ”=IF(C7=””,””,TEXT(DATE($A$1,$B5,C7),”aaa”))”,然后选中“A5:C8”区域向下填充,选中C6:C7向右填充,这样一个整年的计划表就自动生成了(图8)。
图8 生成年度工作表