目录
一、背景介绍
二、代码及成果
三、代码分析
四、打包为exe
本实例主要使用了QTableWidget,openpyxl,利用openpyxl实现对excel文件的读取,QTableWidget实现对excel文件内容读取后,择需要信息在窗体上显示。之所以写该代码,是因为在同一项目的设计过程中(本人的工作是水工设计),常使用纬地软件设计多段道路,每段道路的数模都会生成土方计算表,软件的默认命名难以区分桩号,且挖填方量需要依次点开各个excel文件查看,不太方便。该段代码专门处理纬地软件生成的土方计算表,功能有
自动获取桩号,并批量将文件以起止桩号重命名
自动批量计算总挖填方,并将各段路的方量显示在QTableWidget中。
一、背景介绍
纬地软件生成的土方计算表通常会给定默认命名(如下图),我懒得一个个去改,但是仅根据默认据文件名难以确定是那段桩号的文件。如果改成以桩号来命名,方便最后统计工程量
纬地生成的土方计算表,同一个工作簿内通常有多个工作表,但最后一个是没有用的。需要从每个工作表的A列提取桩号,然后再倒数第二个工作表内提取累计的挖方量和填方量。
二、代码及成果
主要代码及操作界面如下
from PyQt5.QtWidgets importQWidget, QApplication, QFileDialog, QPushButton, QLineEdit, QHBoxLayout, \
QVBoxLayout, QLabel, QTableWidget, QHeaderView, QTableWidgetItemfrom PyQt5.QtGui importQIconimportsys, os, openpyxl
path= os.path.dirname(os.path.dirname(__file__))classMyWin(QWidget):def __init__(self):
super(MyWin, self).__init__()
se