PythonExcel和检测合并单元格的方法
Python解析扩展名为.xlsx的方法:
1. 导入openpyxl模块
import openpyxl
2. 导入Excel表格文件
使用load_workbook()方法读取Excel文件,该方法返回一个工作簿对象。
load_workbook()方法只能读取已有的Excel表格文件,无法创建新的Excel表格。
-
# file_path指文件路径
-
file_path = "example.xlsx"
-
-
# 读取excal
-
workbook = openpyxl.load_workbook(file_path)
3. 获取Sheet工作表
-
# 获取指定name的Sheet
-
sheet = workbook['Sheet1']
-
sheet = workbook.get_sheet_by_name('Sheet1')
-
-
# 调用get_sheet_names()方法获取所有的sheet工作表名,返回为一个列表
-
workbook.get_sheet_names()
4. 获取最大行和列
-
# 获取'Sheet1'工作表中的最大行和列
-
rows = sheet.max_row
-
cols = sheet.max_column
5. 获取单元格的值
以该表格为例展开说明:
5.1 根据指定坐标获取
-
# 以Sheet1['B2']单元格为例,获取该单元格的值
-
cell = sheet['B2']
-
print(cell.value)
-
-
# 输出结果:100
5.2 根据指定行列获取
-
# 以(5,2)单元格为例,获取该单元格的值
-
cell = sheet.cell(row=5, column=2)
-
print(cell.value)
-
-
# 输出结果:21
-
-
-
# 获取该单元格的坐标
-
print(cell.coordinate)
-
-
# 输出结果:B5
6. 通用方法:获取单元格的值(包括获取合并单元格的值)
解决思路:
获取单元格后,判断该单元格是否为合并单元格,若是,则找到该合并区域并返回其左上角的值。
通过sheet.merged_cell.ranges,可以获取当前工作表所有的合并区域列表。
实例:
-
from openpyxl.cell import MergedCell
-
-
# 获取Sheet1工作表中的所有合并区域列表
-
merged_ranges = sheet.merged_cell.ranges
-
-
# 获取单元格的值,若为合并单元格,则返回合并区域左上角的值
-
def get_cell_val(i, j):
-
cell = sheet.cell(i, j)
-
# 判断单元格类型是否为合并单元格
-
if isinstance(cell, MergedCell):
-
for merged_range in sheet.merged_cell.ranges:
-
if cell.coordinate in merged_range:
-
cell = sheet.cell(row=merged_range.min_row, column=merged_range.min_col)
-
return cell.value
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhghajjb
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13