首页 > 解决方案 > 通过比较文件名和电子表格名称将数据粘贴到电子表格中

问题描述

我想将数据从工作簿的一个工作表(源 - 个人报告)复制并粘贴到另一个工作簿(目标 - 合并报告)中。合并报告是一个包含 25 个工作表的报告模板,每个工作表都有唯一的名称。各个报表也具有唯一名称,但该文件名和目标工作表名称不同。我想编写一个 python 脚本来自动化报告生成的整个过程,比较各个报告的工作簿名称,然后将其写入报告工作簿中的相应电子表格(合并报告)。

例如,如果工作簿(单个报告)名称为“abc_individual_report”,则合并工作簿(目标)中包含一个名为“abc_rep”的工作表。因此,代码必须将文件名“abc_individual_report”与目标工作簿中的工作表进行比较。它必须与目标工作簿中的“abc_rep”工作表匹配,并且必须将源数据粘贴到“abc_rep”工作表中。其余 20 个工作表必须遵循相同的过程。

我想用正则表达式来解决这个问题。如果有人可以帮助我解决这个问题,那就太好了。我为这个逻辑写了一个简单的片段。

代码片段:

if re.match(r'.*AB.*high.*', report_to_read_file):
        to_sheet_nr = 0
    elif re.match(r'.*AB.*low.*', report_to_read_file):
        to_sheet_nr = 1
    elif re.match(r'.*ACI.*high.*', report_to_read_file):
        to_sheet_nr = 2
    elif re.match(r'.*ACI.*low.*', report_to_read_file):
        to_sheet_nr = 3
    else:
        msg = ('The tab could not be determined from the comparison file %s\n')
    sys.exit(msg) 

我想为 20-25 个工作表的一些匹配案例实施。请阐明这个问题。谢谢!

标签: pythonexcelregexmatchreport

解决方案


推荐阅读