openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间转换容易

openpyxl的安装

模块的引入

from openpyxl import Workbook
from openpyxl.styles import Color, Font, Alignment
from openpyxl.styles import Border, Side, Fontfrom openpyxl import load_workbook

模块的基本用法

创建与保存

wb = Workbook()  # 创建一个新的excel
ws = wb.active  # 获得这个excel的第一个sheet表名
wb.save('xx.xlsx') # 保存excel,若是保存路径有同名文件则会覆盖只有保存后里面修改的内容才可以找到

打开存在的excel

file_home = r"E:\demo.xlsx" # 文件的绝对路径
wb = load_workbook(file_home)
根据Sheet1这个sheet名字来获取该sheet
ws = wb['Sheet1']

对工作表的操作

print(wb.worksheets)  # 打印这个book里面的所有工作表
print(wb.worksheets[1])  # 打印这个book里面的第二个工作表
print(wb.sheetnames)  # 查看所有的sheet表,结果是列表形式,也可以用遍历:
ws = wb.active  # 获得这个book的第一个sheet表名
wb.remove(wb.worksheets[0])  # 删除索引为0的sheet表
wb.remove(wb['xxx'])  # 删除名为‘xxx’的表ws.title = '修改第一个表名'  # 因为 ws = wb.active获取的是第一个表名,所以修改的就是第一个wb.worksheets[1].title = '修改索引为1的表名'wb['xxx'].title = '修改名为最后一个工作表的表名'  # 修改名为‘xxx’的表名字ws1 = wb.create_sheet('新的sheet表', index=0)  # 插入新的工作表,放在0位置ws2 = wb.create_sheet('最后一个工作表')  # 默认插在最后

对单元格的操作

file_home = r"E:\python-file\my_python\demo.xlsx"
wb = load_workbook(file_home)
ws = wb.active  # 获取第一个工作表
ws_rows_len = ws.max_row  # 最大行数
ws_columns_len = ws.max_column  # 最大列数
ws_rows = ws.rows  # 获取所有的行,得到的是可迭代的
ws_columns = ws.columns  # 获取所有的列,得到的是可迭代的
b4_1 = ws.cell(row=1, column=1)
b4_2 = ws['B4']
print(b4_1.value, b4_2.value)  # 获取单元格内容,用过value得到其值

修改单元格

file_home = r"E:\python-file\my_python\demo.xlsx"
wb = load_workbook(file_home)
ws = wb.active  # 获取第一个工作表
ws.merge('A1:B3')  # 合并单元格A1:B3
ws["A1"] = "=SUM(B1:C1)"  # 通过公式计算产生写入的值
ws["A1"] = 'A1内容'  # 对A1单元格内容修改,若是对合并的单元格的值进行修改,只需修改合并的单元格中左上角的单元格的内容
ws.cell(row=4, column=2, value=10)  # 通过坐标,修改4行2列(也就是B4)的值为10
ws.row_dimensions[1].height = 34  # 设置行高
ws.column_dimensions['B'].width = 22  # 设置列宽
ws["A1"] = "=SUM(B1:C1)"  # 通过公式计算产生写入的值
ws['A35'].font = Font(name='微软雅黑', size=14, bold=True)  # 设置单元格字体,bold=True加粗
ws["A1"].alignment = Alignment(horizontal='center', vertical='center')  # 第一行第一列单元格内容水平居中和垂直居中,也可以选择左对齐或右对齐
ws['A35'].border = Border(left=Side(border_style=None,  color='FF000000'),right=Side(border_style=None,  color='FF000000'),top=Side(border_style=None,  color='FF000000'),bottom=Side(border_style=1,  color='FF000000'),)
# 设置单元格上下左右边框, style属性:'dashDot','dashDotDot', 'dashed','dotted',
#                             'double','hair', 'medium', 'mediumDashDot', 'mediumDashDotDot',
#                             'mediumDashed', 'slantDashDot', 'thin', 'thick'为excel中的默认边框
# 对合并的单元格加边框时需要注意,不像赋值一样,而是需要将其中的所有的单元格(合并前)都加边框

转载于:https://www.cnblogs.com/jiaqi-666/p/9618375.html

使用python的openpyxl模块操作excel相关推荐

  1. 使用python中openpyxl模块操作excel文件,计算单元格分子式的相对分子质量(一)

    背景:本人是力学专业博士,从事分子动力学模拟,最近需要对结果进行数据分析,其中一项就是计算每一时刻的不同分子式的相对分子质量并将最大相对分子质量输出,换出曲线图.已知,分子式数据均保存在excel文件 ...

  2. 使用python中openpyxl模块操作excel文件,计算单元格分子式的相对分子质量(二)

    在(一)文中,在最后输出结果时,只是将相对分子质量的值输出,并未将对应的分子式输出,琢磨了一天,将改进的代码贴出来,希望大家可以给出点优化建议! import openpyxl import rede ...

  3. Python使用openpyxl模块读写excel文件

    Python使用openpyxl模块读写excel文件 openpyxl是一个用于写入和读取xlsx格式的excel文件的Python模块. excel2010后的后缀名为xlsx,不再是xls,使用 ...

  4. python 通过openpyxl来操作Excel文件(一 ):读取Excel文件

    这篇文章讲python 通过openpyxl来读取Excel文件 不清楚怎么通过openpyxl来写入Excel文件的小伙伴可以看我另一篇文章 传送门python 通过openpyxl来操作Excel ...

  5. python 通过openpyxl来操作Excel文件(二 ):写入Excel文件

    这篇文章讲python 通过openpyxl来写入Excel文件,不清楚python怎么读取Excel文件的小伙伴可以去看下我的另一篇文章 传送门https://blog.csdn.net/i_cof ...

  6. [转载] Python利用openpyxl模块读取excel文件内容

    参考链接: Python | 使用openpyxl模块调整Excel文件的行和列 import openpyxl wb = openpyxl.load_workbook('原始数据.xlsx') #读 ...

  7. python导入excel模块_python使用openpyxl模块操作excel

    python中的openpyxl模块可以操作excel文件. 使用pip安装pip install openpyxl 支持流行的lxml库(如果已安装).这在创建大文件时特别有用. 为了能够将图像(j ...

  8. python之openpyxl模块(excel管理)

    openpyxl模块是一个读写Excel 2010文档的Python库,如果要处理更早格式的Excel文档,需要用到额外的库,openpyxl是一个比较综合的工具,能够同时读取和修改Excel文档.其 ...

  9. python使用 pywin32 模块操作 excel,Python 操作 excel 系列之五

    本篇博客是 Python 操作 excel 系列的第5篇,前4篇博客阅读地址如下所示: 2022 之Python操作 Excel,xlrd 与 xlwt 模块一文掌握 Python 操作 Excel, ...

最新文章

  1. stm32f4 hs 电路_三相电路分析
  2. 问题 1436: 地宫取宝 (dp)
  3. Py-博客学习50问
  4. Windows中安装Emacs
  5. Node.js与Sails~Model数据模型
  6. MySQL分库分表分库准备(6th)
  7. github的应用详解
  8. 【STM32】STM32CubeMX教程--功能介绍
  9. maven项目部署到Repository(Nexus)
  10. 《软件工程导论》课后习题答案
  11. 配置 Hadoop 时遇到的一些问题
  12. Using OpenCV Java with Eclipse
  13. vue封装element-ui的table组件,灵活配置表头实现表格内编辑,按钮,链接等功能。...
  14. apache ii评分和死亡率_危重病人APACHE II评分表
  15. BSP和JSP里的UI元素ID生成逻辑 1
  16. Excel VBA 函数
  17. 汽车UDS诊断之诊断会话控制服务(0x10)深度剖析
  18. C#开启和关闭UAC功能
  19. CDR中神奇的卷页滤镜
  20. #!/bin/bash 和 #!/usr/bin/env bash 的区别

热门文章

  1. 解决 kindle 书籍字体颜色偏淡问题的方法
  2. [Hadoop] - 自定义Mapreduce InputFormatOutputFormat
  3. sql server规范
  4. Oracle查询笔记
  5. Mac OS X Glut build instructions
  6. Android判断应用或Activity是否存在
  7. 团队开发git使用各种问题
  8. 使用rancher创建负载均衡服务
  9. bashrcprofile
  10. AutoRun Pro Enterprise II 教程--- 教你制作软件工具箱教程清晰版(教程画面清晰,教程语音可以调高)...