[hidecontent type="payshow"]

OpenPyxl 合并格子

# 打开Excel表test.xlsx
wb = load_workbook("test.xlsx")

# 获取工作表
ws = wb.active

# 合并格子(值取 A1)
ws.merge_cells("A1:E1")
wb.save("test.xlsx")

OpenPyxl 分拆格子

# 打开Excel表test.xlsx
wb = load_workbook("test.xlsx")

# 获取工作表
ws = wb.active

# 分拆格子(注意,原本的资料不会恢复)
ws.unmerge_cells("A1:E1")
wb.save("test.xlsx")

OpenPyxl 插入竖排

# 打开Excel表test.xlsx
wb = load_workbook("test.xlsx")

# 获取工作表
ws = wb.active

# 插入竖排,在 B 竖排插入(原本的竖排往右挪)
ws.insert_cols(2)
wb.save("test.xlsx")

OpenPyxl 删除竖排

# 打开Excel表test.xlsx
wb = load_workbook("test.xlsx")

# 获取工作表
ws = wb.active

# 删除竖排,在 B 竖排删除(原本的竖排往左挪)
ws.delete_cols(2)
wb.save("test.xlsx")

OpenPyxl 移动资料

# 打开Excel表test.xlsx
wb = load_workbook("test.xlsx")

# 获取工作表
ws = wb.active

# 移动资料
# 第一个参数为资料范围,
# 第二个参数为横排移动数量(正为右,负为左)
# 第三个参数为竖排移动数量(正为下,负为上)
ws.move_range("A3:E4", 2, 2)
wb.save("test.xlsx")

OpenPyxl 统计资料

# 打开Excel表test.xlsx
wb = load_workbook("test.xlsx")

# 获取工作表
ws = wb.active

# 统计出现次数
values = []
rows = ws.rows
for row in rows:
    for cell in row:
        values.append(cell.value)
print("Number of values: {0}".format(len(values)))
print("Sum of values: {0}".format(sum(values)))
print("Max of values: {0}".format(max(values)))
print("Min of values: {0}".format(min(values)))

OpenPyxl插入一行数据

# 打开 test.xlsx
wb = load_workbook("test.xlsx")

# 打开工作表1(active默认第一个工作表)
ws = wb.active

# 插入一行 内容分别为 123, 4, 5, 6, 7, 8
ws.append([123,4,5,6,7,8])

# 储存文件
wb.save("test.xlsx")

OpenPyxl 跨栏置中

# 打开Excel表test.xlsx
wb = load_workbook("test.xlsx")

# 获取工作表
ws = wb.active

# 跨栏置中
ws.merge_cells("A1:B2")
cell = ws.cell(row=1, column=1)
cell.alignment = Alignment(horizontal="center", vertical="center")
wb.save("test.xlsx")

[/hidecontent]