多個excel文件合並成一個Excel的多個sheet頁


 

使用場景:進行數據測試的時候,會跑出來很多張表,要求是盡量放在一個excel里面,分不同的sheet頁

數量不多的話還能手動復制粘貼弄一下,之前也用過vb腳本,但是導出數據為excel的時候一個excel文件會有三個sheet,運行腳本合並時這些空的sheet頁也會匯總進去

解決方法:導出的時候導出為csv格式,編碼選擇936 gbk,這樣的話csv的sheet頁只有一個,名稱也會csv文件名稱一樣,此時使用腳本就很奈斯了

 

使用步驟:

1,將需要匯總的表全部導出到同一個文件夾下,編碼選擇936 gbk

2,在文件夾下新建一個excel文件,右鍵點擊sheet頁,點擊查看代碼

 

 3,復制以下代碼,粘貼,按f5執行

Sub Find()
Application.ScreenUpdating = False
Dim MyDir As String
MyDir = ThisWorkbook.Path & "\"
ChDrive Left(MyDir, 1) 'find all the excel files
ChDir MyDir
Match = Dir$("")
Do
If Not LCase(Match) = LCase(ThisWorkbook.Name) Then
Workbooks.Open Match, 0 'open
ActiveSheet.Copy Before:=ThisWorkbook.Sheets(1) 'copy sheet
Windows(Match).Activate
ActiveWindow.Close
End If
Match = Dir$
Loop Until Len(Match) = 0
Application.ScreenUpdating = True
End Sub

4,完成后也不用保存,檢查一下匯總結果,X掉就可以了

 

順帶記錄一下查看有幾個sheet的代碼

sub xxx()
msgbox sheets.count
end sub


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM