快速合并多個Excel工作簿到一個新的工作簿_第1頁
快速合并多個Excel工作簿到一個新的工作簿_第2頁
快速合并多個Excel工作簿到一個新的工作簿_第3頁
快速合并多個Excel工作簿到一個新的工作簿_第4頁
快速合并多個Excel工作簿到一個新的工作簿_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

快速合并多個Excel工作簿到一個新的工作簿

如果你有大量Excel工作簿需要合并到一起時,要是你手動完成這一工作,也許這個工作可能將花費你一整天的時間。其實要完成這類合并工作,最好的方法是使用宏,這樣的話短時間內(nèi)甚至只需幾分鐘便可完成。

本文所介紹的技巧將向你說明如何創(chuàng)建這樣一個宏,看看如何使用宏來節(jié)省你的寶貴時間。此技巧可以應(yīng)用于MicrosoftExcel2003/2007/2010/2013等版本,只是在彈出VBA代碼窗口(MicrosoftVisualBasic窗口、MicrosoftVisualBasicforApplications窗口)時會因Excel版本不同而有所差異。

此方法支持:被合并的擴展名為“.xls”和“.xlsx”的工作簿、合并中可多次選擇不同文件夾下的工作簿。

將需要合并的excel工作簿文件放置在一個文件夾中以便于選擇(如果放于不同文件下,則需要在提示“是否繼續(xù)添加其他文件夾中的Excel工作簿文件?”時選擇“是”),這些工作簿總數(shù)適宜100個左右或以下,不要求工作簿中只包含一個單獨的工作表,允許部分工作簿包含多個工作表(以電腦配置或者說電腦可用資源為上限,沒有固定的值,如果處理過多時excel沒有響應(yīng)或電腦假死甚至死機時,請減少待合并工作簿的數(shù)量),建議在合并前刪除待合并的工作簿中的空工作表。

在該文件夾中,新建立一個新的Excel工作簿文件。

打開新建的Excel工作簿文件,按Alt+F11或者將鼠標移動到下方工作表名稱sheet1上右鍵,選擇查看代碼。

在彈出的代碼編輯窗口中(如下圖)粘貼以下代碼(如果沒有出現(xiàn)直接復制代碼的面板等時,需要按Ctrl+R或點菜單欄中“視圖”中的“工程資源管理器”,再雙擊出現(xiàn)在左上方的“工程–VBAProject”中的“Sheet1”,即可打開代碼窗口;宏代碼應(yīng)粘貼到除ThisworkBook外的工作表中):SubCombineWorkbooks()'SourcecodefromtheInternetforfree'DaxinCPAGuangdongBranchHoohurtlemodifiedonJuly27,2014DimFilesToOpenDimxAsIntegerOnErrorGoToErrHandlerApplication.ScreenUpdating=FalseExtension1:FilesToOpen=Application.GetOpenFilename(FileFilter:="MicrosoftExcel97-2003工作簿文件(*.xls),*.xls",MultiSelect:=True,Title:="請選擇待合并的工作簿文件")IfTypeName(FilesToOpen)="Boolean"ThenMsgBox"沒有選中Excel97-2003工作簿文件"GoToExtension2EndIfx=1Whilex<=UBound(FilesToOpen)Workbooks.OpenFilename:=FilesToOpen(x)Sheets().MoveAfter:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)x=x+1WendExtension2:FilesToOpen=Application.GetOpenFilename(FileFilter:="MicrosoftExcel工作簿文件(*.xlsx),*.xlsx",MultiSelect:=True,Title:="請選擇待合并的工作簿文件")IfTypeName(FilesToOpen)="Boolean"ThenMsgBox"沒有選中Excel工作簿文件"GoToContinueEndIfx=1Whilex<=UBound(FilesToOpen)Workbooks.OpenFilename:=FilesToOpen(x)Sheets().MoveAfter:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)x=x+1WendContinue:DimMsg$,Style&,Title$,Continue&Msg="是否繼續(xù)添加其他文件夾中的Excel工作簿文件?"Style=vbYesNo+vbDefaultButton2Title="是否繼續(xù)添加其他工作簿"Continue=MsgBox(Msg,Style,Title)IfContinue=vbYesThenGoToExtension1ElseGoToOverEndIfOver:ExitHandler:Application.ScreenUpdating=TrueExitSubErrHandler:MsgBoxErr.DescriptionResumeExitHandlerEndSub

接著按F5或點菜單欄中“運行”中的“運行子過程/窗體”(或“運行子過程/用戶窗體”,因Excel版本不同而出現(xiàn)差異),此時會提示你選擇要合并的文件(此時你可以通過按下Ctrl鍵單擊的方法選擇多個工作簿,或按“Ctrl+A”選擇全部工作簿),它會使用代碼在你所選擇的工作簿列表中循環(huán),打開每個工作簿并將其中的工作表移動到工作簿的末尾。

在將工作表添加到工作簿末尾的過程中,Excel會復制工作表的名稱并自動根據(jù)檢測結(jié)果附加(2)、(3)等數(shù)字編號。工作簿中與其他工作表相關(guān)的任何公式也會自動更新的新的名稱。

然后將“代碼編輯窗口”中的代碼清空(以免產(chǎn)生宏安全提示),并將合并后得到的工作秒簿保存即可。

請考慮Excel兼容性問題,盡量在Office2007以上版本的Excel中操作,如果在Excel2003中操作時,必要時請安裝“OFFICE2003兼容2007的補丁包”(FileFormatConverters.e

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論