
客户这边,其中有一个如同上图所示的 sheet,然而需求是,需要将这张表第一列(一级部)数据相同内容做合并单元格处理,结果如下:

代码分享如下:
from openpyxl import load_workbook
"""合并单元格"""
result_file = "C:/Users/Administrator/Desktop/123.xlsx"
wb = load_workbook(result_file)
ws = wb.get_sheet_by_name('Sheet1')
# 获取第一列数据
type_list = []
i = 2
while True:
r = ws.cell(i, 1).value
if r:
type_list.append(r)
else:
break
i += 1
# 判断合并单元格的始末位置
s = 0
e = 0
flag = type_list[0]
for i in range(len(type_list)):
if type_list[i] != flag:
flag = type_list[i]
e = i - 1
if e >= s:
ws.merge_cells("A" + str(s + 2) + ":A" + str(e + 2))
s = e + 1
if i == len(type_list) - 1:
e = i
ws.merge_cells("A" + str(s + 2) + ":A" + str(e + 2))
wb.save(result_file)
本文介绍了一种使用Python openpyxl库合并Excel表格中第一列重复数据的方法,通过遍历第一列数据并比较相邻元素,实现对相同内容的单元格进行合并。
4280

被折叠的 条评论
为什么被折叠?



