用PY实现两个表格的某列序号对比,查找相同的序号,并将所在行连接并输出新表格。

本文介绍如何使用Python的openpyxl模块,结合win32ui、win32api和win32com库,实现两个Excel表格中相同编号行的查找与合并。通过选择xlsx文件,读取指定列进行比较,找到匹配项后,将两表的相同行连接并保存到新的Excel表格中。最后,利用pyinstaller将Python脚本转换为可执行文件,方便使用。
摘要由CSDN通过智能技术生成

1需求:

        两个xlsx(xls自动另存为xlsx)对比,查找编号相同的行,并将两个表的相同行链接存到新表格中。

2实现:

        openpyxl模块载入指定列(win32ui库选择xlsx文件,win32api+win32com库弹出提示框,载入xlsx文件,读取指定列数据),两个表格指定列循环对比(嵌套for语句,对比两个列表内数据),找到后记录并复制表格整行(循环保存行数据到新列表),对两个表的行连接(列表+操作),保存到新表格中(time库保存文件名带时间),结果表自动打开。py生成exe文件(pyinstaller库操作,pyinstaller -F -w *.py)

  

3代码:

import openpyxl 
import time
import win32ui,win32api,win32con

import xlwings as xw
import os
 

# 使用xlwings另存xls为xlsx
def s2x1(file_path):
    app = xw.App(visible=True, add_book=False)
    example = app.books.open(file_path)
    example.save(f"{file_path}x")
    example.close()
    app.quit()
    # os.remove(file_path)
    return(file_path+'x')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值