使用Python實現(xiàn)合并多個Excel文件
合并Excel可以將多個文件中的數(shù)據(jù)合并到一個文件中,這樣可以幫助我們更好地匯總和管理數(shù)據(jù)。日常工作中,合并Excel主要有以下兩種需求:
- 將多個Excel文件合并為一個文件
- 將多個Excel工作表合并為一個工作表
這篇文章將介紹如何使用第三方Python庫 Spire.XLS for Python 實現(xiàn)以上兩種合并Excel文件的需求。
將多個Excel文件合并為一個文件
Spire.XLS for Python 可以將同一文件夾或者不同文件路徑下的多個Excel文件合并到一個Excel文件中。大概實現(xiàn)思路是:
- 首先創(chuàng)建一個列表,用于存儲所有需要合并的Excel文件。
- 然后遍歷列表中的文件并將它們都載入到一個臨時的工作簿中。
- 最后遍歷臨時工作簿中的所有工作表,然后通過Workbook.Worksheets.AddCopy() 方法將這些工作表都復(fù)制到一個新的Excel文件中并保存。
目標(biāo)文件(位于不同文件路徑):
合并后的Excel文件:
示例代碼:
from spire.xls import * from spire.common import * # 創(chuàng)建一個列表,并將需要合并的Excel文件放入其中 files = [] files.append("F:\\成績表.xlsx" ) files.append("分析.xlsx") files.append("C:\\Users\\Administrator\\Desktop\\總結(jié).xlsx") # 創(chuàng)建一個新工作簿 newbook = Workbook() # 刪除其中的默認(rèn)工作表 newbook.Worksheets.Clear() # 創(chuàng)建一個臨時工作簿 tempbook = Workbook() # 遍歷列表中的文件路徑 for file in files: # 將列表中的文件加載到臨時工作簿中 tempbook.LoadFromFile(file) # 遍歷臨時工作簿中所有的工作表 for sheet in tempbook.Worksheets: # 將臨時工作簿中的工作表復(fù)制到新工作簿中 newbook.Worksheets.AddCopy(sheet, WorksheetCopyType.CopyAll) # 將新工作簿另存為.xlsx文件 newbook.SaveToFile("合并Excel文件.xlsx", ExcelVersion.Version2016) newbook.Dispose() tempbook.Dispose()
將多個Excel工作表合并為一個工作表
將多個文件中的工作表合并到一個工作表中首先是需要獲取工作表中的包含數(shù)據(jù)的單元格區(qū)域,然后將該單元格區(qū)域通過 CellRange.Copy(destRange) 方法將其復(fù)制到指定工作表中。
目標(biāo)工作表:
合并后:
示例代碼:
from spire.xls import * from spire.common import * # 創(chuàng)建Workbook類的對象 workbook = Workbook() # 加載第一個Excel文件 workbook.LoadFromFile("表1.xlsx") # 創(chuàng)建Workbook類的對象 workbook2 = Workbook() # 加載第二個Excel文件 workbook2.LoadFromFile("表2.xlsx") # 獲取兩個Excel文件中的第一張工作表 sheet1 = workbook.Worksheets[0] sheet2 = workbook2.Worksheets[0] # 獲取第二個文件工作表中用到的區(qū)域 sourceRange = sheet2.AllocatedRange # 在第一個文件工作表中指定目標(biāo)區(qū)域 destRange = sheet1.Range[sheet1.LastRow + 1, 1] # 將第二個文件工作表中用到的區(qū)域復(fù)制到第一個文件工作表中目標(biāo)區(qū)域 sourceRange.Copy(destRange) # 保存結(jié)果文件 workbook.SaveToFile("合并多個工作表.xlsx", ExcelVersion.Version2016) workbook.Dispose()
到此這篇關(guān)于使用Python實現(xiàn)合并多個Excel文件的文章就介紹到這了,更多相關(guān)Python合并多個Excel內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python 文件下載之?dāng)帱c續(xù)傳的實現(xiàn)
用python進(jìn)行文件下載的時候,一旦出現(xiàn)網(wǎng)絡(luò)波動問題,導(dǎo)致文件下載到一半。如果將下載不完全的文件刪掉,那么又需要從頭開始,如果連續(xù)網(wǎng)絡(luò)波動,是不是要頭禿了。本文提供斷點續(xù)傳下載工具方法,希望可以幫助到你2021-11-11Python?設(shè)計模式中的創(chuàng)建型建造者模式
本文介紹Python設(shè)計模式中的創(chuàng)建型建造者模式,其表現(xiàn)為復(fù)雜對象的創(chuàng)建與表現(xiàn)相分離,這樣,同一個過程就有不同的表現(xiàn),想要創(chuàng)建一個由多個部分組成的對象,而且它的構(gòu)成需要一步接一步的完成。只有當(dāng)各個部分都完成了,這個對象才完整,下文相關(guān)自來哦,需要的朋友可以參考下2022-02-02跟老齊學(xué)Python之私有函數(shù)和專有方法
這篇文章是老齊學(xué)Python系列文章的一篇,主要介紹了跟私有函數(shù)和專有方法,需要的朋友可以參考下2014-10-10Python實現(xiàn)CART決策樹算法及詳細(xì)注釋
CART算法是一種樹構(gòu)建算法,既可以用于分類任務(wù),又可以用于回歸,本文僅討論基本的CART分類決策樹構(gòu)建,不討論回歸樹和剪枝等問題,感興趣的朋友跟隨小編一起看看吧2021-10-10Python將數(shù)據(jù)生成二維碼的四種方法實例代碼
二維碼在日常生活中非常常見,廣泛應(yīng)用于支付、登錄驗證、信息分享等場景,下面這篇文章主要給大家介紹了關(guān)于Python將數(shù)據(jù)生成二維碼的四種方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-09-09利用Pandas讀取文件路徑或文件名稱包含中文的csv文件方法
今天小編就為大家分享一篇利用Pandas讀取文件路徑或文件名稱包含中文的csv文件方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07