工具背景

由于工作过程的繁杂性,工作内容的复杂性。急需一个工具来自动的完成重复的工作。作为硬件工程师,应该都知道,每个作品完成后,在加工之前必须导出BOM表,然后整理出来可以上传到ERP或者符合公司的公用模板。因此导致了需要多次的复制黏贴过程。

公司模板或者ERP内置模板一般都是固定的,所以我针对本人所在公司设计了这样一个基于Python语言的BOM表自动生成工具。

所需模块

import xlrd
import xlwt

获取模板文件数据

# 读取模板加载模板数据到新建的文档之中
data = xlrd.open_workbook(r'模板.xls')
table = data.sheets()[0]
print(table) nRows = table.nrows
nCols = table.ncols # 读取Excel表格前七行数据并存储在列表rowsTable
rowsTable = []
for num in range(8): rowsTable.append(table.row_values(num))

获取BOM数据

# 打开数据文件,将数据加载入上一步新建的文档
print("请输入要处理的BOM文档路径:")
bomURL = input('>')
data1 = xlrd.open_workbook(bomURL)
table1 = data1.sheets()[0] nRows1 = table1.nrows
nCols1 = table1.ncols colsTable = []
for num1 in range(nCols1): colsTable.append(table1.col_values(num1))

将模板文件数据填入新的文件中

# 创建一个Excel
workBook = xlwt.Workbook(encoding='utf-8', style_compression=0)
sheet = workBook.add_sheet('test', cell_overwrite_ok=True)
# sheet.write(0, 0, cell_A1) # 将模板中的前八行数据填入新建文档
for num1 in range(8): ColsNum = 0while ColsNum < nCols: for cell_value1 in rowsTable[num1]: sheet.write(num1, ColsNum, cell_value1) if len(rowsTable[num1][ColsNum]) != 0: ColsNum += 1
#                print("%d" % ColsNum) else: ColsNum = 27break

将BOM文件中的数据填入新的文件中

# 将第1列的数据填入新建文档
for num2 in range(nRows1): sheet.write(num2+8, 2, colsTable[0][num2]) # 将第2列的数据填入新建文档
for num2 in range(nRows1): sheet.write(num2+8, 21, colsTable[1][num2]) # 将第3列的数据填入新建文档
for num2 in range(nRows1): sheet.write(num2+8, 0, colsTable[2][num2]) # 将第4列的数据填入新建文档
for num2 in range(nRows1): sheet.write(num2+8, 1, colsTable[3][num2]) # 将第5列的数据填入新建文档
for num2 in range(nRows1): sheet.write(num2+8, 4, colsTable[4][num2]) # 将第6列的数据填入新建文档
for num2 in range(nRows1): sheet.write(num2+8, 6, colsTable[5][num2])

运行结果

更多请关注公众号

Python之Excel使用实现BOM表自动生成工具相关推荐

  1. 人员考勤,MySQL数据库一个表自动生成3表筛选人员迟到早退缺勤

    人员考勤,MySQL数据库一个表自动生成3表筛选人员迟到早退缺勤 </h1><div class="clear"></div><div c ...

  2. Idea根据表自动生成实体

    Idea根据表自动生成实体: 首先说下这种方式有个缺点,就是如果表里面有日期.时间类型,那么需要手动的设置映射类型 第一步:在Idea中配置好数据库: 在Idea窗口右边,点击Database按钮 配 ...

  3. python打造excel神器_再见 VBA!神器工具统一 Excel 和 Python

    你们好,我是东哥.html 常常给你们推荐好用的数据分析工具,也收到了铁子们的各类好评.此次也不例外,我要再推荐一个,并且是个爆款神器.python Excel和Jupyter Notebok都是我天 ...

  4. python制作考试系统_python测试框架数据生成工具最全资源汇总

    xUnit frameworks 单元测试框架 frameworks 框架 unittest - python自带的单元测试库,开箱即用 unittest2 - 加强版的单元测试框架,适用于Pytho ...

  5. 基于Excel的QR二维码生成工具——原理及算法详解(之一)

    老虎二维码(下载链接在这里)是一个基于Excel的二维码生成工具,完全使用Excel表单公式结合VBA实现,没有调用任何外部库,实现了支持中文英文混合字符以及常用微信二维码编码的自动生成,在工作表单元 ...

  6. python写一个记单词程序_杨鹏记单词法安排表自动生成算法(Python实现)

    这几天在寻思着要背托福词汇,找了个方法想试一试,这个方法就是杨鹏单词记忆法,是一种根据艾宾浩斯遗忘曲线的规律来制定的学习方法,有兴趣的可以点击https://www.douban.com/note/2 ...

  7. python单词表-杨鹏记单词法安排表自动生成算法(Python实现)

    这几天在寻思着要背托福词汇,找了个方法想试一试,这个方法就是杨鹏单词记忆法,是一种根据艾宾浩斯遗忘曲线的规律来制定的学习方法,有兴趣的可以点击https://www.douban.com/note/2 ...

  8. python 批量打印文档_使用python将Excel数据填充Word模板并生成Word

    [项目需求] Excel中有一万多条学生学平险数据,需要给每位学生打印购买回执单,回执单包括学生姓名,身份证号,学校等信息,目前只能从Excel拷贝数据到Word模板中,然后打印,效率及其低下,寻求帮 ...

  9. python打印文档添加条码_12行代码教会你用python读excel文件,提取数据,生成条形码...

    一.需求分析 条形码应用广泛,尤其是人事.财务和库管等等岗位,常需根据excel文件成批生成条码,如果是经常性天天做,用excel的自己控件还是很枯燥烦人的. 其实用pyrhon可以更加轻松的完成这一 ...

最新文章

  1. 谷歌要用AI把你的自拍做成表情包
  2. 重温Delphi之:如何定义一个类
  3. 深圳科技园血案:程序员砍杀产品经理
  4. 翠香猕猴桃 和 薄皮核桃,快来下单
  5. python实验收获与反思 100字_期中考试总结与反思100字4篇
  6. vue-cli 上传图片上传到OSS(阿里云)
  7. 了解protected 以及公用、私有和受保护的继承
  8. 安装Rational Rose所踩得坑
  9. JDBC单独了解一下
  10. 分治法——最大子列和问题
  11. Excel常用技巧1
  12. 阿里小蜜:语音识别、语义分析、深度学习在手机淘宝的实战分享
  13. Node.js 种子下载器
  14. SylixOS中断延迟队列
  15. eclipse的简介
  16. python中flush什么意思_python flush()定义及作用详解(实例分析)
  17. Linux运维跳槽必备面试题
  18. 【MATLAB】MATLAB 可视化之极坐标图
  19. 层次模型的概念,举出三个层次模型的实例!
  20. 车内看车头正不正技巧_科目二考试最实用技巧!

热门文章

  1. 微信小程序反编译整理,wxss不成功
  2. 信号处理算法(4):全球最快的傅里叶变换算法(FFTW)
  3. 我用C#写的CF外挂
  4. window server 2019 将服务器加入域控中
  5. 线性代数2.3特殊矩阵(方阵)
  6. 虚拟机中显示网络电缆被拔出的解决方法
  7. WPF 控件绑定本控件自身属性
  8. 【DETR源码解析】三、Transformer模块
  9. BosonNLP API 中文语义分析(笔记)【boson已经停止提供服务了,可使用 百度AI 的 NLP 功能】
  10. EM | 西湖大学鞠峰/陶亮揭示深海微生物组赋存致病性和抗生素抗性潜力的独特特征...