python使用openpyxl库修改excel表格数据方法


Posted in Python onMay 03, 2018

1、openpyxl库可以读写xlsx格式的文件,对于xls旧格式的文件只能用xlrd读,xlwt写来完成了。

简单封装类:

from openpyxl import load_workbook
from openpyxl import Workbook
from openpyxl.chart import BarChart, Series, Reference, BarChart3D
from openpyxl.styles import Color, Font, Alignment
from openpyxl.styles.colors import BLUE, RED, GREEN, YELLOW
class Write_excel(object):
  def __init__(self,filename):
    self.filename = filename
    self.wb = load_workbook(self.filename)
    self.ws = self.wb.active
  def write(self, coord, value):
    # eg: coord:A1
    self.ws.cell(coord).value = value
    self.wb.save(self.filename)
  def merge(self, rangstring):
    # eg: rangstring:A1:E1
    self.ws.merge_cells(rangstring)
    self.wb.save(self.filename)
  def cellstyle(self, coord, font, align):
    cell = self.ws.cell(coord)
    cell.font = font
    cell.alignment = align
  def makechart(self, title, pos, width, height, col1, row1, col2, row2, col3, row3, row4):
    ''':param title:图表名
         pos:图表位置
         width:图表宽度
         height:图表高度
    '''
    data = Reference(self.ws, min_col=col1, min_row=row1, max_col=col2, max_row=row2)
    cat = Reference(self.ws, min_col=col3, min_row=row3, max_row=row4)
    chart = BarChart3D()
    chart.title = title
    chart.width = width
    chart.height = height
    chart.add_data(data=data, titles_from_data=True)
    chart.set_categories(cat)
    self.ws.add_chart(chart, pos)
    self.wb.save(self.filename)

简单使用:

1、新建excel文件处理

wb = Workbook()#创建工作簿 
ws = wb.active#激活工作表 
ws1 = wb.create_sheet("Mysheet")#创建mysheet表 
ws.title = "New Title"#表明改为New Title 
ws.sheet_properties.tabColor = "1072BA"#颜色 
ws['A4'] = 4#赋值 
d = ws.cell(row=4, column=2, value=10)#赋值 
cell_range = ws['A1':'C2']#选择单元格区域 
wb.save('test.xlsx')#保存

2、已有excel文件的处理

a、修改excel数据

wr = Write_excel('d:\demo.xlsx') 
wr.write('A2','hello')

b、合并单元格

wr.merge('A1:B3')

c、单元格加入样式,如字体,颜色等属性

单元格B2设置宋体,14号,红色,自动换行,水平居中,垂直居中

font = Font(name=u'宋体', size=14, color=RED, bold=True)
align = Alignment(horizontal='center', vertical='center')
wr.cellstyle('B2', font, align)

d、创建3d柱状图

rows = [ 
  (None, 2013, 2014), 
  ("Apples", 5, 4), 
  ("Oranges", 6, 2), 
  ("Pears", 8, 3) 
] 
 
for row in rows: 
  ws.append(row) 
 
wr.makechart(u"3D Bar Chart", 'E5', 12.5, 7, 2, 1, 3, 4, 1, 2, 4)

python使用openpyxl库修改excel表格数据方法

可以创建3d柱状和折线图表,挺好用的。

官方文档:https://openpyxl.readthedocs.io/en/latest/usage.html

以上这篇python使用openpyxl库修改excel表格数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python函数式编程指南(二):从函数开始
Jun 24 Python
django静态文件加载的方法
May 20 Python
python 获取url中的参数列表实例
Dec 18 Python
Python自定义函数计算给定日期是该年第几天的方法示例
May 30 Python
python实现ip代理池功能示例
Jul 05 Python
django 类视图的使用方法详解
Jul 24 Python
pytorch对梯度进行可视化进行梯度检查教程
Feb 04 Python
150行python代码实现贪吃蛇游戏
Apr 24 Python
基于Python的Jenkins的二次开发操作
May 12 Python
python线程池如何使用
May 28 Python
Python数据库封装实现代码示例解析
Sep 05 Python
全网最全python库selenium自动化使用详细教程
Jan 12 Python
python实现跨excel的工作表sheet之间的复制方法
May 03 #Python
Python利用openpyxl库遍历Sheet的实例
May 03 #Python
python实现简单淘宝秒杀功能
May 03 #Python
Python实现的求解最小公倍数算法示例
May 03 #Python
Python实现的求解最大公约数算法示例
May 03 #Python
Python实现的质因式分解算法示例
May 03 #Python
Python绘制3D图形
May 03 #Python
You might like
晶体管来复再生式二管收音机
2021/03/02 无线电
新手学PHP之数据库操作详解及乱码解决!
2007/01/02 PHP
php异常处理技术,顶级异常处理器
2012/06/13 PHP
基于PHP的简单采集数据入库程序
2014/07/30 PHP
PHP中类的自动加载的方法
2017/03/17 PHP
PHP消息队列实现及应用详解【队列处理订单系统和配送系统】
2019/05/20 PHP
百度地图api应用标注地理位置信息(js版)
2013/02/01 Javascript
使用javascript实现监控视频播放并打印日志
2015/01/05 Javascript
jQuery插件bxSlider实现响应式焦点图
2015/04/12 Javascript
AngularJs 60分钟入门基础教程
2016/04/03 Javascript
node.js中 stream使用教程
2016/08/28 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
Vuex 入门教程
2018/01/10 Javascript
微信小程序自定义toast弹窗效果的实现代码
2018/11/15 Javascript
Windows上node.js的多版本管理工具用法实例分析
2019/11/06 Javascript
实例分析javascript中的异步
2020/06/02 Javascript
React倒计时功能实现代码——解耦通用
2020/09/18 Javascript
[02:40]DOTA2殁境神蚀者 英雄基础教程
2013/11/26 DOTA
python错误处理详解
2014/09/28 Python
基于Python实现对PDF文件的OCR识别
2016/08/05 Python
Python时间获取及转换知识汇总
2017/01/11 Python
TensorFlow安装及jupyter notebook配置方法
2017/09/08 Python
Python实现的调用C语言函数功能简单实例
2019/03/13 Python
Python实现括号匹配方法详解
2020/02/10 Python
Python连接HDFS实现文件上传下载及Pandas转换文本文件到CSV操作
2020/06/06 Python
使用Keras预训练好的模型进行目标类别预测详解
2020/06/27 Python
美国最大的骑马用品零售商:HorseLoverZ
2017/01/12 全球购物
户籍证明书标准模板
2014/09/10 职场文书
教师四风自我剖析材料
2014/09/30 职场文书
2015年企业新年寄语
2014/12/08 职场文书
2014年财政工作总结
2014/12/10 职场文书
实习指导教师评语
2014/12/30 职场文书
清洁工工作总结
2015/08/11 职场文书
党员干部学法用法心得体会
2016/01/21 职场文书
golang 实现时间戳和时间的转化
2021/05/07 Golang
python 标准库原理与用法详解之os.path篇
2021/10/24 Python