別再為Excel中合併多個工作簿鬧心了,試試這2種方法,分分鐘搞定

前面的《Excel中多個工作表拆分生成單個文件,同事1分鐘搞定了

》教程,小編教大家快速拆分Excel表格,今天小編再教大家多個工作簿的數據合併到一個工作簿中。

別再為Excel中合併多個工作簿鬧心了,試試這2種方法,分分鐘搞定

情況一:Excel文件中的CSV格式

很多軟件導出的的表格文件格式CSV格式,也就是文件的後綴名是.csv

1、新建一個文本文檔,然後在文檔中輸入:copy *.csv 合併.csv ,關閉保存文檔

別再為Excel中合併多個工作簿鬧心了,試試這2種方法,分分鐘搞定

別再為Excel中合併多個工作簿鬧心了,試試這2種方法,分分鐘搞定

2、將該文檔後綴名.txt改成.bat

別再為Excel中合併多個工作簿鬧心了,試試這2種方法,分分鐘搞定

3、雙擊這個文件,便自動生成了新的合併Excel文件

【注意】此方法只適用於CSV格式的Excel文件

情況二:用VBA代碼

1、打開Excel,新建一個工作表,並保存在與需要合併數據的工作簿同一個文件夾下

2點擊【開發工具】選項卡中的【VisualBasic】按鈕,或按Alt+F11鍵,調出VBA代碼窗口

別再為Excel中合併多個工作簿鬧心了,試試這2種方法,分分鐘搞定

3、在VBA窗口中,點擊左側列表中的【ThisWorkbook】,然後輸入代碼:

Sub 合併工作簿數據()

Dim MP, MN, AW, Wbn, wn

Dim Wb As Workbook

Dim i, a, b, d, c, e

Application.ScreenUpdating = False

MP = ActiveWorkbook.Path

MN = Dir(MP & "" & "*.xls")

AW = ActiveWorkbook.Name

Num = 0

e = 1

Do While MN <> ""

If MN <> AW Then

Set Wb = Workbooks.Open(MP & "" & MN)

a = a + 1

With Workbooks(1).ActiveSheet

For i = 1 To Sheets.Count

Wb.Sheets(i).Range("a1").Resize(1, Sheets(i).UsedRange.Columns.Count).Copy .Cells(1, 1)

d = Wb.Sheets(i).UsedRange.Columns.Count

c = Wb.Sheets(i).UsedRange.Rows.Count - 1

e = e + c

Wb.Sheets(i).Range("a2").Resize(c, d).Copy .Cells(.Range("a1048576").End(xlUp).Row + 1, 1)

Next

Wbn = Wbn & Chr(13) & Wb.Name

Wb.Close False

End With

End If

MN = Dir

Loop

Range("a1").Select

Application.ScreenUpdating = True

MsgBox "共合併了" & a & "個工作薄下全部工作表。如下:" & Chr(13) & Wbn, vbInformation, "提示"

End Sub

別再為Excel中合併多個工作簿鬧心了,試試這2種方法,分分鐘搞定

【說明】不明白代碼的小夥伴們,可以直接複製-粘貼,再運行就好了。

你學會了嗎?記得給小編轉發、點贊喲!需要什麼教程可以在評論區留言


專欄

WPS2019表格和文字二合一教程

作者:Excel與財務

98幣

24人已購

查看



分享到:


相關文章: