如何获取Excel中指定行内合并单元格的起止列坐标?
获取Excel指定行内的合并单元格起止列编号
要筛选出指定行的合并单元格,只需遍历所有合并单元格范围,判断目标行是否落在该合并单元格的行区间内即可。利用openpyxl中合并单元格对象的min_row、max_row、min_col、max_col属性就能实现:
from openpyxl import load_workbook # 加载工作簿和目标工作表 wb = load_workbook('Book2.xlsx') sheet = wb['Sheet1'] # 设置要查询的目标行号(注意openpyxl中行号从1开始) target_row = 3 # 遍历所有合并单元格范围 for merged_range in sheet.merged_cells.ranges: # 判断目标行是否在当前合并单元格的行范围内 if merged_range.min_row <= target_row <= merged_range.max_row: print(f"合并单元格起始列编号:{merged_range.min_col},结束列编号:{merged_range.max_col}")
说明
merged_range.min_row/max_row:当前合并单元格的起始/结束行号merged_range.min_col/max_col:当前合并单元格的起始/结束列号- 行号和列号均从1开始计数,符合Excel的原生编号规则
内容的提问来源于stack exchange,提问作者Katrina Marrie
相关产品推荐
相关产品推荐

