ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

openpyxl对合并单元格处理

2021-09-02 09:03:41  阅读:248  来源: 互联网

标签:openpyxl min 单元格 合并 cell range merged


  1. 逻辑:

合并单元格的控制是通过MergedCellRange这个类来控制的,调用的语句是这个:

for merged_range in sheet.merged_cells.ranges: 
sheet.merged_cells.ranges这个变量是MergedCellRange的集合,merged_range是MergedCellRange实例。是所有的合并单元格对象;所以上边这个语句就是对所有合并单元格类实例进行遍历;
if cell.coordinate in merged_range:
上面这句可以判断当前cell是否属于其中一个合并单元格,注意:如果单纯想看合并单元格都有哪些cell不可以用下面这句:
if isinstance(cell, MergedCell)
原因是合并区域的左上角cell(也就是唯一能用cell.value读出值的那个cell)它的实例类型并不是MergedCell,其余读不出值的cell类型才是MergedCell;
MergedCellRange.cells变量是当前合并单元格所有单元格的坐标tuple
 
获取合并单元格的值:
merged_range.min_row是合并单元格的最小行
merged_range.min_col是合并单元格的最小列
merged_range.max_row是合并单元格的最大行
merged_range.max_col是合并单元格的最大列
当前合并单元格的值等于左上角单元格的值:
Value= sheet.cell(row=merged_range.min_row,column=merged_range.min_col).value
 
 
 
 

 

标签:openpyxl,min,单元格,合并,cell,range,merged
来源: https://www.cnblogs.com/mghhzAnne/p/15217177.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有