python實現跨excel的工作表sheet之間的複製
阿新 • • 發佈:2019-01-31
python,將test1的Sheet1通過“跨檔案”複製到test2的Sheet2裡面。
包括谷歌沒有能搜出這種問題答案。
我們貼出程式碼。
我們載入openpyxl這個包來解決:
from openpyxl import load_workbook
filename = 'test1.xlsx'
filename2 = 'test2.xlsx'
def replace_xls(sheetname):
wb = load_workbook(filename)
wb2 = load_workbook(filename2)
ws = wb[sheetname]
ws2 = wb2[sheetname]
#兩個for迴圈遍歷整個excel的單元格內容
for i,row in enumerate(ws.iter_rows()):
for j,cell in enumerate(row):
ws2.cell(row=i+1, column=j+1, value=cell.value)
wb2.save(filename2)
sheetnames = [u'Sheet1',u'Sheet2',u'Sheet3',u'Sheet4']
#遇到複製幾十個sheet時候,很有必要寫個迴圈
for sheetname in sheetnames:
replace_xls(sheetname)
注意,我的程式碼會覆蓋掉本來excel中的內容。
如何你的excel是動態的,可以自己寫一個vb指令碼,先清空excel再去執行python指令碼。