今天给大家分享一个真实的办公自动化需求,日常办公肯定都会遇到的,大家一定要仔细阅读需求说明,在理解需求之后即可体会Python的强大!
一、需求说明
首先我们来看下今天的需求,有一份档案记录总表的Excel工作簿, 每天会根据当天日期建立新表,每天的表格内包含所有档案信息,同时也有可能会添加新的档案名。同个年度的总表在年末可能会有两、三百个工作表,同时每个表中可能也存在千余份档案信息。表格形式如下(为了直观呈现本例以7个工作表和十余份档案的形式呈现)
需要完成的操作:为了方便审查特定档案信息,需要给出档案名后生成一份新表,该表包含指定档案在所有日期(即所有工作表)中的记录。最终结果如下(以档案x003为例):
也就是老板说:给我把这几百个表格中所有包含档案x003的相关数据全部找到并整理个新的表格给我!
二、步骤分析
正式写代码前可以把需求分析清楚,将复杂问题简单化。
说白了,这个需求要求把所有日期工作表中的特定行都提取出来整合成一个新表。那么我们可以遍历每一张表,然后遍历第一列(名称列,也可以看作A列)每一个有数据的单元格,如果单元格中的文字为我们需要的档案名,就把这一行提取出来放到新的表格中,进一步梳理步骤为建立一个新的EXCEL工作簿
新表的表头和档案记录Excel中的一样,也是名称、配置、提交日期等
遍历档案记录Excel的每一张工作表sheet,再遍历第一列每一个有数据的单元格,对内容进行判断
找到符