Excel如何把多個工作簿合併成一個工作簿(Excel怎麼將多個工作表合併到一個表裡)


前言

在日常工作過程中,我們有可能需要把多個Excel工作簿的內容彙總到一張Excel工作表中。如果通過複製貼上的方式也並不是不可行,只是會浪費大量的時間和人力。在這樣的情況下,我們一起討論一種可以比較方便和快捷的進行多個工作簿合併成一個工作表的工作。這樣我們可以分成兩步去操作:首先:多個工作簿合併到一個“彙總工作簿”;其次:將這個“彙總工作簿”中的工作表進行合併,合併成一個工作表


第一步:多個工作簿合併到一個工作簿

在由多個工作簿合併到一個工作表之前,我們先把多個工作簿合併到一個工作簿。

1、新建一個工作薄,將其命名為合併後的名字,例如叫做:彙總工作簿。

2、開啟此工作簿:“彙總工作簿”

3、在“彙總工作簿”下任一個工作表標籤上點選右鍵,選擇“檢視程式碼”。

檢視程式碼.png

4、在開啟的VBA編輯視窗中貼上以下程式碼:

Sub 工作薄間工作表合併()

Dim FileOpen

Dim X As Integer

Application.ScreenUpdating = False

FileOpen =
           Application.GetOpenFilename(FileFilter:="Microsoft Excel檔案(.xlsx),.xlsx", MultiSelect:=True, Title:="合併工作薄")

X = 1

While X <= UBound(FileOpen)

Workbooks.Open Filename:=FileOpen(X)

Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)

X = X 1

Wend

ExitHandler:

Application.ScreenUpdating = True

Exit Sub

errhadler:

MsgBox Err.Description

End Sub

5、關閉該VBA編輯視窗

6、在Excel中,開發工具---巨集,選“工作薄間工作表合併”,然後“執行”。

開發工具-巨集.png

執行“工作薄間工作表合併”.png

7、在開啟的對話視窗中,選擇你要合併的多個工作薄。

8、等待執行。而後就OK了。

9、開啟名為“彙總工作簿”的Excel檔案,我們就能看到多個其他工作簿以多個Sheet頁的形式合併到了這一個工作簿中。

第二步:多個工作表合成一個工作表

在“彙總工作簿”工作簿中,有很多個Sheet頁,我們的最終目的是把這多個Sheet頁合併到一個Sheet頁的多行。其操作辦法如下:

1、在“彙總工作簿”中,新建一個sheet頁。

2、在新建的sheet標籤上單擊右鍵,選擇“檢視程式碼”

3、在開啟的VBA編輯視窗中貼上以下程式碼:

Sub 合併當前工作簿下的所有工作表()

Application.ScreenUpdating = False

For j = 1 To Sheets.Count

If Sheets(j).Name <> ActiveSheet.Name Then

X = Range("A65536").End(xlUp).Row 1

Sheets(j).UsedRange.Copy Cells(X, 1)

End If

Next

Range("B1").Select

Application.ScreenUpdating = True

MsgBox "當前工作簿下的全部工作表已經合併完畢!", vbInformation, "提示"

End Sub

4、關閉該VBA編輯視窗

5、在Excel中,開發工具---巨集,選“合併當前工作簿下的所有工作表”,然後“執行”。

合併當前工作簿下的所有工作表.png

6、等待執行,而後就OK了。


結語

我們上面提到的是如何使用VBA來實現多個工作簿合成一個工作簿以及一個工作簿中的多個工作表按行合併。