首页 > 其他分享 >excel对比脚本

excel对比脚本

时间:2024-04-17 21:44:55浏览次数:27  
标签:脚本 xlsx data excel book design print super 对比

对比excel

 

 

from os.path import exists
from xlwings import App
import yaml
def check_list_tool():
if not exists('主管.xlsx'):
print("缺少主管文件,无法比较")
else:
# 比较横梁
if exists('横梁.xlsx'):
do_compare('主管.xlsx','横梁.xlsx',"横梁data","横梁data","B1:B50")
print("横梁比较已完成")

if exists('立柱.xlsx'):
do_compare('主管.xlsx','立柱.xlsx',"立柱data","立柱data","B1:B50")
print("立柱比较已完成")

if exists('滑块.xlsx'):
do_compare('主管.xlsx','滑块.xlsx',"滑块data","滑块data","B1:B50")
print("滑块比较已完成")

if exists('底座.xlsx'):
do_compare('主管.xlsx','底座.xlsx',"底座data","底座data","B1:B50")
print("底座比较已完成")

if exists('平衡器.xlsx'):
do_compare('主管.xlsx','平衡器.xlsx',"平衡器data","平衡器data","B1:B50")
print("平衡器比较已完成")

def do_compare(super_book_name,design_book_name,super_sheet_name,design_sheet_name,range_to_conpare):
app = App(visible=True, add_book=False)
super_book = app.books.open(super_book_name)
design_book = app.books.open(design_book_name)
for row in super_book.sheets[super_sheet_name].range(range_to_conpare):
for super_cell in row:
design_cell = design_book.sheets[design_sheet_name].range(super_cell.address)
if super_cell.value != design_cell.value:
super_cell.color = design_cell.color = (255, 180, 180)
else:
super_cell.color = design_cell.color = (200, 255, 200)
super_book.save()
super_book.close()
design_book.save()
design_book.close()
app.quit()

 

 

if __name__ == '__main__':
print("1.请先确认excel已彻底关闭")
print("2.请保证文件名称符合程序规定: 主管.xlsx 横梁.xlsx 立柱.xlsx 滑块.xlsx 底座.xlsx ")
print("3.请确保文件夹中包含 主管.xlsx, 以及其他待比较文件,以及内部sheet的名字没有被改动")
print("4.比较过且一致的是绿色,不一致的是红色")
print("继续请按回车")
input()
check_list_tool()

print("程序已结束 ^_^,按任意键退出")

input()

 

打包成exe。直接安装pyinstaller。

运行这个,在pycharm的terminal中运行一次,会超过迭代次数。此时加入下面的代码。可以搜到教程。

import sys ; sys.setrecursionlimit(sys.getrecursionlimit() * 5)

 

标签:脚本,xlsx,data,excel,book,design,print,super,对比
From: https://www.cnblogs.com/ziwenzhao95/p/18141838

相关文章

  • 用海豚调度器定时调度从Kafka到HDFS的kettle任务脚本
    在实际项目中,从Kafka到HDFS的数据是每天自动生成一个文件,按日期区分。而且Kafka在不断生产数据,因此看看kettle是不是需要时刻运行?能不能按照每日自动生成数据文件?为了测试实际项目中的海豚定时调度从Kafka到HDFS的Kettle任务情况,特地提前跑一下海豚定时调度这个任务,看看到底什么......
  • shell脚本中的运算符和条件判断
    shell脚本中的运算符和条件判断:一、算术运算符在Shell脚本中,你可以使用各种运算符来执行数学运算、比较和逻辑操作。计算方式:$[]$(())例:a=$[(9+5)90]打印输出结果==>echo$a二、条件判断判断方式:test$a=90[$a=90]注意事项:判断处理中间空格隔开数字......
  • Python读取和生成excel文件
    在Python中,你可以使用第三方库来读取和生成Excel文件。其中,最常用的库是pandas/openpyxl和xlwt/xlrd。Pandas安装Pandas库:pipinstallpandas要读取Excel文件,你可以使用pandas的read_excel函数。下面是一个示例代码,演示了如何使用pandas读取Excel文件中的数据:importpan......
  • mysql问题排查常用脚本
    查询出执行时间较长的进程select*frominformation_schema.processlistwherecommand!='Sleep'andtime>5*60orderbytimedesc;select*frominformation_schema.processlistwhereCommand!='Sleep'orderbyTimedesc;查看进程showfullprocess......
  • 实用的bat脚本
    众所周知只要把bat脚本路径加入环境变量就可以在任意shell以命令的形式使用脚本。为此我创建了一个文件夹专门用来存放自定义的bat脚本,然后将该文件夹的路径加入环境变量。于是便可以使用win+R的方式快捷使用命令。部分脚本如下mdr.bat@echooffsetlocalenabledelayede......
  • C++的介绍及与C语言的对比
    目录一.C语言与C++二.面向过程和面向对象三.C++的应用领域四.Cpp的运行和标准1.编译型语言和解释型语言2.C++的运行过程及相关文件解释一.C语言与C++C语言C语言是为开发Unix系统而创建的语言,它是一种面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。它贴近硬件,运行......
  • python封装工具类之excel读写
    在python自动化过程中,如果测试用例数据在excel中,就需要去对excel进行读写操作这个测试类主要是读取excel中的测试用例,然后再将测试结果回写到excel中。excel表格格式示例(cases.xlsx):case_idcase_namemethodurldataexpectedactualresult1用户正常登录post/log......
  • 开源OCR模型对比
    引言目前,开源的项目中有很多OCR模型,但是没有一个统一的基准来衡量哪个是更好一些的。面对这么多的模型,让我们有些不知所措。为此,最近一段时间以来,我一直想要构建这样一个基准,现在来看,已经初步具有雏形。为了能更好地评测各个模型效果,收集标注了两个开源评测集:text_det_test......
  • vbs提示没有在该机执行windows脚本宿主的权限。请与系统管理员联系
    <p>最近在项目中使用VBS来实现图片的批量删除和批量导入功能,但不知道为什么,只要在我机器上一运行VBS文件就提示“没有在该机执行windows脚本宿主的权限。请与系统管理员联系。”的错误。下面贴出本人的解决方法,并附上图片批量导入及批量删除的VBS代码。</......
  • 如何用VBS脚本收集远程计算机或本地计算机安装的软件
    <divid="navCategory"><h5class="catalogue">目录</h5><ulclass="first_class_ul"><li><ahref="#_label0">目标</a></li><li><ahref="#_la......