python使用openpyxl库按 行/列 合并/拆分 Excel表格
文章目錄
- 1.準(zhǔn)備數(shù)據(jù)
- 按行合并
- 按行拆分
- 按列合并
- 按列拆分
- 保存文件
1.準(zhǔn)備數(shù)據(jù)
準(zhǔn)備一個(gè)名為test1的excel文件,該工作簿里有sheet1,sheet2,sheet3,sheet4四個(gè)工作表。
數(shù)據(jù)可以隨便設(shè)定,示例數(shù)據(jù)形式如下:
sheet1:
sheet2:
sheet3:
sheet4:
from openpyxl import load_workbook wb = load_workbook("test1.xlsx") # 獲取整個(gè)工作簿 wslist = wb.worksheets # 獲取工作簿的所有工作表,放在一個(gè)列表中# 依次取出test1中的sheet1,sheet2,sheet3,sheet4 ws1 = wslist[0] ws2 = wslist[1] ws3 = wslist[2] ws4 = wslist[3]
按行合并
將test1中的sheet1與sheet2的數(shù)據(jù)進(jìn)行列合并,結(jié)果保存在一個(gè)名為test2的文件,中的new_sheet1表格中。
data1 = ws1["A1:E11"] data2 = ws2["A2":"E11"] data = data1 + data2 ws_new1 = wb.create_sheet('new_sheet1')for i in range(len(data)):for j in range(len(data[i])):ws_new1.cell(i+1, j+1, data[i][j].value)按行拆分
將test1中的sheet1與進(jìn)行按行拆分,結(jié)果保存在一個(gè)名為test2的文件,中的new_sheet2,new_sheet3表格中。
sheet1一共有11行,拆分規(guī)則為:前5行放在new_sheet2中,后6行放在new_sheet3中。
按列合并
將test1中的sheet3與sheet4的數(shù)據(jù)進(jìn)行列合并,結(jié)果保存在一個(gè)名為test2的文件,中的new_sheet4表格中。
data5 = ws3["A1:C21"] data6 = ws4["A1":"B21"] ws_new4 = wb.create_sheet('new_sheet4')for i in range(len(data5)):for j in range(len(data5[i])):ws_new4.cell(i+1, j+1, data5[i][j].value)n = len(data5[0]) for i in range(len(data6)):for j in range(len(data6[i])):ws_new4.cell(i+1, j+n+1, data6[i][j].value)按列拆分
將test1中的sheet1進(jìn)行列拆分,拆分成兩個(gè)表格,結(jié)果保存在一個(gè)名為test2的文件,中的new_sheet5和new_sheet6表格中。
拆分規(guī)則:將sheet的左三列放在new_sheet5中,右二列放在new_sheet6中。
保存文件
wb.save("test2.xlsx")以上功能均已實(shí)現(xiàn),請(qǐng)自行測試,這里不在一一展示。
test2:
總結(jié)
以上是生活随笔為你收集整理的python使用openpyxl库按 行/列 合并/拆分 Excel表格的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何实现BLE 最大数据吞吐率并满足设计
- 下一篇: 计算机组装功耗,浅谈组装电脑之电脑功耗电