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实现异步回调机制代码分享
Jan 10 Python
详细解析Python中的变量的数据类型
May 13 Python
Python3操作SQL Server数据库(实例讲解)
Oct 21 Python
python获取当前目录路径和上级路径的实例
Apr 26 Python
python 获取图片分辨率的方法
Jan 08 Python
python批量下载抖音视频
Jun 17 Python
python使用装饰器作日志处理的方法
Jul 11 Python
WxPython实现无边框界面
Nov 18 Python
基于python3生成标签云代码解析
Feb 18 Python
Python自动化xpath实现自动抢票抢货
Sep 19 Python
python中altair可视化库实例用法
Jan 26 Python
在 Python 中利用 Pool 进行多线程
Apr 24 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
用PHP和ACCESS写聊天室(一)
2006/10/09 PHP
PHP IDE PHPStorm配置支持友好Laravel代码提示方法
2015/05/12 PHP
php防止网站被攻击的应急代码
2015/10/21 PHP
php封装的page分页类完整实例
2016/10/18 PHP
PHP PDOStatement::bindParam讲解
2019/01/30 PHP
基于jQuery的弹出警告对话框美化插件(警告,确认和提示)
2010/06/10 Javascript
基于JQuery制作的产品广告效果
2010/12/08 Javascript
修改jQuery Validation里默认的验证方法
2012/02/14 Javascript
如何用js控制frame的隐藏或显示的解决办法
2013/03/20 Javascript
jquery实现简单的自动播放幻灯片效果
2015/06/13 Javascript
JavaScript获取当前cpu使用率的方法
2015/12/15 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
AngularJS 路由和模板实例及路由地址简化方法(必看)
2016/06/24 Javascript
AngularJS实现树形结构(ztree)菜单示例代码
2016/09/18 Javascript
Javascript使用function创建类的两种方法(推荐)
2016/11/19 Javascript
Bootstrap基本插件学习笔记之折叠(22)
2016/12/08 Javascript
VueJs 将接口用webpack代理到本地的方法
2017/11/27 Javascript
详解vue中axios的封装
2018/07/18 Javascript
解决vue跨域axios异步通信问题
2019/04/17 Javascript
Vue封装的组件全局注册并引用
2019/07/24 Javascript
JS控制GIF图片的停止与显示
2019/10/24 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
python对指定目录下文件进行批量重命名的方法
2015/04/18 Python
python 实现判断ip连通性的方法总结
2018/04/22 Python
Python爬虫抓取代理IP并检验可用性的实例
2018/05/07 Python
python 3.7.0 安装配置方法图文教程
2018/08/27 Python
对python多线程中互斥锁Threading.Lock的简单应用详解
2019/01/11 Python
python根据文章标题内容自动生成摘要的实例
2019/02/21 Python
python可视化爬虫界面之天气查询
2019/07/03 Python
numpy数组广播的机制
2019/07/12 Python
如何利用XMLHTTP检测URL及探测服务器信息
2013/11/10 面试题
如何掌握自荐信格式呢
2013/11/19 职场文书
三年级科学教学反思
2014/01/29 职场文书
同志主要表现材料
2014/08/21 职场文书
2014年作风建设心得体会
2014/10/22 职场文书
docker 制作mysql镜像并自动安装
2022/05/20 Servers