Python 可以協助處理大量重複性工作,將 Excel 上的工作表自動化複製至上百個不同的 Excel 檔案上 實務上可能會遇到必須將一個 Excel 工作表複製到不同的 Excel 檔案上的情況,一般而言利用 Excel 移動或複製工作表的功能也能處理,但是當這個動作必須執行上百次,移動到上百個不同的 Excel 檔案時,就必須耗時的一個一個執行重複性工作,然而利用 Python 就可以輕鬆簡單化這項工作。 不過 Excel 檔案因儲存的格式可分為 xlsx( 一般版本 ) 跟 xls( 相容版本 ) ,這兩個版本在 Python 處理上需要使用不同的套件處理,這次就以相容版本為例進行示範,有興趣或是有需要的人可以再去搜尋 其他版本的處理。 操作範例 : 假定手上有來自於不同地方的 20 個資料檔案,這些資料都適用一致的編碼方式,為了避免之後時間久了產生混亂,因此必須將這份編碼表分別插入這 20 份資料中,讓每份檔案都有一份編碼表可以參閱,編碼表如下所示。 這邊會用到 3 個套件,開始執行前,尚未安裝 xlrd 、 xlwt 及 xlutils 者需要先安裝,在 Window 環境下,開起命令提示字元,輸入 pip install xlrd 、 pip install xlwt 以及 pip install xlutils ,安裝完成後,開始執行後續的程式碼。 import xlrd import xlwt from xlutils.copy import copy def replace_xls(sheetname): table = xlsx.sheet_by_name(sheetname) rows = table.nrows cols = table.ncols worksheet = wb2_1.add_sheet(sheetname) for i in range(0,rows): for j in range(0, cols): # print(i,j,table.cell_value(i, j)) worksheet.write(i, j ,table.cell_value(i, j