Python之利用第三方库套用excel模板,模板的样子假设如下:

现在要用这个模板,并且在“第二行第二列”的下方填入内容:

#!usr/bin/python3
# -*-coding=utf-8 -*- from xlutils.copy import copy #注意xlutils所用格式是xls
import xlrd
import xlwt #找到要套用的excel模板并且用xlrd打开,formatting_info=True表示照搬格式;
tem_excel = xlrd.open_workbook("template.xls", formatting_info=True); #这里的formatting_info=True必须使用xls格式,而且是正规的xls格式,不是拿个xlsx文件改成xls.
#找到需要的工作表,以索引的方式
tem_sheet = tem_excel.sheet_by_index(0) #新建一个工作簿,并拷贝前面打开的工作簿
new_excel = copy(tem_excel)
#在新的工作簿里新建工作表
new_sheet = new_excel.get_sheet(0)
#在新的工作表里写入内容,默认是是使用表格的初始格式,也就是不套用模板
new_sheet.write(2,1,12) #在表的第三行第二列写入数字12[打开表格会发现并没有套用格式]
new_sheet.write(3,1,18) #在表的第四行第二列写入数字18[打开表格会发现并没有套用格式]
new_sheet.write(4,1,19) #在表的第五航第二列写入数字19[打开表格会发现并没有套用格式]
new_sheet.write(5,1,15) #在表的第六航第二列写入数字15[打开表格会发现并没有套用格式]
new_excel.save('test.xls') #将工作簿保存到指定位置; '''
#鉴于上述写入并没有套用我们想要的格式,我们人工设置他们的格式.
#新建样式开始
'''
style = xlwt.XFStyle() #初始化自定义格式,空样式
font = xlwt.Font() #初始化字体
font.name = "微软雅黑" #设置字体名称
font.bold = True #设置字体加粗
font.height = 360 #字体大小的高度是字号乘以20,这里设置的是18号字体
style.font = font #将字体样式添加到空样式style里 #新建边框样式
borders = xlwt.Borders() #初始化单元格边框
borders.top = xlwt.Borders.THIN #上,THIN代表是细线,也可以设置为粗线等样式
borders.bottom = xlwt.Borders.THIN #下
borders.left = xlwt.Borders.THIN #左
borders.right = xlwt.Borders.THIN #右
style.boders = borders #将边框样式添加到style样式 #新建对齐样式
alignment = xlwt.Alignment() #初始化对齐样式
alignment.horz = xlwt.Alignment.HORZ_CENTER #水平中心对齐
alignment.vert = xlwt.Alignment.VERT_CENTER #垂直中心对齐
style.alignment = alignment #将对齐样式添加到style样式 #开始写入数据到表格并附带样式
new_sheet.write(2,1,12,style); #将样式应用到单元格2,1,也就是第三行第二列,并附带样式style
new_sheet.write(3,1,12,style); #将样式应用到单元格3,1,也就是第四行第二列,并附带样式style #保存数据
new_excel.save('20200926.xls');

样式效果如下:

有几点注意:

  • 利用xlutils套用格式的时候,formatting_info = True前的文件格式一定是xls,不然会出现不可预期的错误;
  • 简单套用写入保存,是不会套用格式的,只会按默认的格式保存文档,所以要手动设置格式;
  • 步骤是:
  1. 打开模板文件
  2. 复制模板文件
  3. 设置格式
  4. 设置字体
  5. 设置边框
  6. 设置对齐
  7. 写入并保存文件

利用xlutils第三方库复制excel模板的更多相关文章

  1. 【react】利用prop-types第三方库对组件的props中的变量进行类型检测

    1.引言--JavaScript就是一个熊孩子   1.1对于JSer们来说,js是自由的,但同时又有许多让人烦恼的地方.javascript很多时候就是这么一个熊孩子,他很多时候并不会像C和java ...

  2. 利用python第三方库提取PDF文件的表格内容

    小爬最近接到一个棘手任务:需要提取手机话费电子发票PDF文件中的数据.接到这个任务的第一时间,小爬决定搜集各个地区各个时间段的电子发票文件,看看其中的差异点.粗略统计下来,PDF文件的表格框架是统一的 ...

  3. 利用已有库对excel进行读和写

    读excel的内容:libxls库 C: https://github.com/evanmiller/libxls  或 http://libxls.sourceforge.net/ 参考博客:htt ...

  4. 利用jieba第三方库对文件进行关键字提取

    已经爬取到的斗破苍穹文本以TXT形式存储 代码 import jieba.analyse path = 'C:/Users/Administrator/Desktop/bishe/doupo.text ...

  5. Python 标准库、第三方库

    Python 标准库.第三方库 Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具.这些库可用于文件读写 ...

  6. prop-types:该第三方库对组件的props中的变量进行类型检测

    利用prop-types第三方库对组件的props中的变量进行类型检测

  7. Python 读写操作Excel —— 安装第三方库(xlrd、xlwt、xlutils、openpyxl)

    数据处理是 Python 的一大应用场景,而 Excel 则是最流行的数据处理软件.因此用 Python 进行数据相关的工作时,难免要和 Excel 打交道. 如果仅仅是要以表单形式保存数据,可以借助 ...

  8. 在服务端C#如何利用NPOI构建Excel模板

    目前本人接触过两种模板导出的方式:(1)C#利用NPOI接口制作Excel模板,在服务端用数据渲染模板(2)在前端利用前人搭建好的框架,利用office编写xml制作模板,在客户端进行数据的渲染,导出 ...

  9. Python:使用第三方库xlwt来写Excel

    继上一篇文章使用xlrd来读Excel之后,这一篇文章就来介绍下,如何来写Excel,写Excel我们需要使用第三方库xlwt,和xlrd一样,xlrd表示read xls,xlwt表示write x ...

随机推荐

  1. Spring MVC系列-(5) AOP

    5 AOP 5.1 什么是AOP AOP(Aspect-Oriented Programming,面向切面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的 ...

  2. LaTeX相关自学文档

    install-latex-guide-zh-cn: lshort-zh-cn: 百度网盘链接:https://pan.baidu.com/s/1cBv9Fu8KFaf0QFZ7_slxmw 提取码: ...

  3. 微前端大赏二-singlespa实践

    微前端大赏二-singlespa实践 微前端大赏二-singlespa实践 序 介绍singleSpa singleSpa核心逻辑 搭建环境 vue main react child 生命周期 结论 ...

  4. mfc 笔记

    在类成员初始化时,使用另一个成员变量,必须满足,在.h声明时在另一个变量之后,初始 .hprivate: //K线图位置 CPoint m_KPoint; //十字光标位置 CPoint m_trac ...

  5. SSM之Spring框架--->>墨盒案例

    分析: 程序中包括打印机(Printer).墨盒(Ink).和纸张(Paper).三类组件 首先创建一个新项目文件Spring_Box 我们来定义墨盒和纸张的接口类 墨盒接口Ink.java文件内容如 ...

  6. Python+Qt学习随笔:PyQt中常用的事件处理函数

    在PyQt图形界面中,我们经常要捕获特定事件如鼠标按键按下.鼠标按下等事件以执行特定操作,可以通过重写组件对象的相关事件处理函数来实现相关处理,具体特定事件常用的包括如下: keyPressEvent ...

  7. 使用 webpack 手动搭建 vue 项目

    webpack 是一个前端工程化打包工具,对于前端工程师来说 webpack 是一项十分重要的技能.下面我们就通过搭建一个 vue 项目来学习使用 webpack 主要环境: node v14.15. ...

  8. python中的Restful

    哇,昨天组里进行总结的时候,小哥哥和小姐姐真是把我给秀到了,跟他们一比,我总结的太垃圾了,嘤嘤嘤.因为我平常不怎么总结,总结的话,有word还有纸质的,现在偏向于纸质,因为可以练练字.个人观点是,掌握 ...

  9. 打造云原生大型分布式监控系统(四): Kvass+Thanos 监控超大规模容器集群

    概述 继上一篇 Thanos 部署与实践 发布半年多之后,随着技术的发展,本系列又迎来了一次更新.本文将介绍如何结合 Kvass 与 Thanos,来更好的实现大规模容器集群场景下的监控. 有 Tha ...

  10. git 常用命令 command

    git config --list //查看配置信息   git config user.name //查看用户名  git config user.email //查看用户邮箱 从远程克隆到本地仓库 ...