Python 汇总两张excel表格:分解excel复杂表头,比对汇总表和子表异同项目,生成仅含相同项的汇总表和填充异同项目的子表

本文介绍了如何使用Python处理含有合并单元格的复杂Excel表头,通过分解表头并比对汇总表和子表,生成仅包含相同项目的汇总表以及标示异同项目的子表。详细过程包括表头分解、内容比对,并提供了相关代码示例。后期计划结合tkinter创建操作界面。
摘要由CSDN通过智能技术生成

在工作中遇到需要将子表项目添加到汇总表中,存在以下特点:

工作中遇到需要将子表项目汇总到汇总表中,存在以下特点:

1、表头复杂,存在合并的单元格,考虑分解单元格并填充空白单元格。

2、子表中存在汇总表没有的项目,考虑将子表分别标示异同项目,创建辅助的汇总表,内容为子表的相同项目。

(原设想为子表自动添加到汇总表中,并自动增开汇总表缺失项目。经过试验,表头排序暂时无法解决,故改为人为判断插入位置。)

一、原文件

原汇总表:

原子表:

二、思路

1、将汇总表、子表分解表头,保存新的汇总表和子表:01分解后的汇总表,02分解后的子表

2、比对分解后的汇总表和子表,生成仅含相同项的03汇总表.xls,同项绿色底,异项红色底的04子表。

3、后续可根据03表和04表处理数据。

三、代码

xlrd模块只能读取数据,不能写入数据,xlwt写入数据,记得打开单元格重写,否则无法改写已有数据的单元格。

from openpyxl import *
import xlrd
import xlwt
import xlutils.copy
import pandas as pd
import csv
import os

def setstyle(pattern_fore_colour= 0x0A,borders_left= 1,borders_right= 1,borders_top= 1,borders_bottom = 1):
    style = xlwt.XFStyle()
    pat = style.pattern
    pat.pattern = 1 # 打开填充
    pat.pattern_fore_colour= pattern_fore_colour #红色
    borders2_2 = style.borders #定义边框
    borders2_2.left,borders2_2.right,borders2_2.top,borders2_2.bottom = borders_left,borders_right,borders_top,borders_bottom
    return style


# @@@@@@@@@@@@@@@@----------------------分解表头----------------------@@@@@@@@@@@@@@@@
"""
将输入的xls表分解合并的单元格,并填充这些单元格的数值,形成新的xls保存到电脑里
"""
# 打开汇原
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值