从合并表获取价格填入广联达表08分表内

上一篇把所有广联达表08的分表内容汇总了,然后我挨个填入型号价格以后面临一个巨大问题就是我该怎么填回去。我知道excel有自带的VLOOKUP,但是这么多分表挨个填也使一件十分巨大的工程量。算了,还是问问chaiGPT把。果然又给了我一段代码:

import os
import pandas as pd

# 读取合并后的文件
merge_file_path = 'D:\\fsx\\python\\data\\hebing.xlsx'
merge_df = pd.read_excel(merge_file_path, sheet_name=0, header=0)

# 遍历D:\fsx\python\data\xt文件夹下的所有子文件夹
root_folder = 'D:\\fsx\\python\\data\\xt'
for root, dirs, files in os.walk(root_folder):
    for file in files:
        # 只处理Excel文件,并且跳过以~$开头的临时文件和合并后的文件
        if file.endswith('.xlsx') and not file.startswith('~$') and os.path.join(root, file) != merge_file_path:
            # 读取Excel文件
            xls = pd.ExcelFile(os.path.join(root, file), engine='openpyxl')
            # 检查文件是否有第二个标签页
            if len(xls.sheet_names) > 1:
                # 读取第二个标签页(索引为1),并指定使用第三行作为列名
                df = pd.read_excel(xls, sheet_name=1, header=2)
                # 将金额列名改为'金额'
                df.rename(columns={df.columns[7]: '金额'}, inplace=True)
                # 将合并后的文件与当前文件进行匹配,对应项目名称和项目特征描述相同的物品,将金额信息填回当前文件内
                for index, row in merge_df.iterrows():
                    df.loc[(df['项目名称']==row['项目名称']) & (df['项目特征描述']==row['项目特征描述']), '金额'] = row['金额']
                # 将修改后的数据写回当前文件
                writer = pd.ExcelWriter(os.path.join(root, file))
                df.to_excel(writer, sheet_name='Sheet2', index=False)
                writer._save()

虽然,但是,价格是全部填进去了,但是貌似excel的文件格式都没有了。。。算了总比我自己填要快,源表格复制一份,然后将价格那一列链接到新文件中,over。今天这个费时间点,应该用了2个小时@!@