首页
/
每日頭條
/
職場
/
vba多個excel文件合并為一個表格
vba多個excel文件合并為一個表格
更新时间:2026-07-03 11:42:39

合并工作簿與合并工作表,是Excel數據處理永恒的話題。原來韓老師講過用SQL語句,還講過Excel|零基礎也會合并多工作表,隻需鼠标按序點下去,今天給大家兩組代碼,每次需要合并工作簿與或是工作表時,複制過來使用就好了。

合并工作簿

代碼如下(代碼橫屏觀看效果更好):

Sub 合并工作薄() Dim FileOpen '定義打開文件變量 Dim i As Integer '定義打開文件個數變量 Application.ScreenUpdating = False '關閉屏幕更新,避免合并時屏幕閃爍 FileOpen = Application.GetOpenFilename(FileFilter:="Microsoft Excel文件(.xlsx),.xlsx", MultiSelect:=True)'打開文件類型為.xlsx,并可以打開多個 i = 1 Do While i <= UBound(FileOpen) Workbooks.Open Filename:=FileOpen(i) Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) '将需要合并的工作薄中工作表合并到最後一個工作表 i = i 1 Loop Application.ScreenUpdating = True '打開屏幕更新 MsgBox "已完成合并" '合并完成并提示 End Sub

代碼窗口如下:

vba多個excel文件合并為一個表格(ExcelVBA)1

效果如下:

vba多個excel文件合并為一個表格(ExcelVBA)2

合并工作表

在VBA窗口中輸入以下代碼(代碼橫屏觀看效果更好):

Sub 合并工作表() Application.ScreenUpdating = False '關閉屏幕更新,避免合并時屏幕閃爍 Dim sht As Worksheet '定義工作表變量 Dim irow%, icol% '定義行列變量 Sheet1.UsedRange.ClearContents '清除sheet1現有數據 For Each sht In Worksheets If sht.Name <> Sheet1.Name Then With sht irow = .Cells(.Rows.Count, 1).End(xlUp).Row '當前工作表數據行數 icol = .Cells(1, .Columns.Count).End(xlToLeft).Column '當前工作表數據列數 If Sheet1.Range("a1") = "" Then .Range("a1").Resize(irow, icol).Copy Sheet1.Range("a1")'當前工作表第一行複制到彙總工作表 Else .Range("a2").Resize(irow - 1, icol).Copy Sheet1.Range("a" & Sheet1.Cells(Sheet1.Rows.Count, 1).End(xlUp).Row 1)'當前工作表除第一行以外的數據複制到彙總工作表 End If End With End If Next Application.ScreenUpdating = True'打開屏幕更新 End Sub

如下圖:

vba多個excel文件合并為一個表格(ExcelVBA)3

效果如下:

vba多個excel文件合并為一個表格(ExcelVBA)4

不要怕VBA,你可以從模仿開始寫起的,寫多了,見識多了,你也會了。當然,如果有編輯的基礎的,學的快一些,如果沒有編輯基礎的朋友,那要先去了解變量、語句、算法、對象的概念了。

------------------------------------------

--------------------------------------------

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
比較有寓意的團隊英文名字
比較有寓意的團隊英文名字
比較有寓意的團隊英文名字?Summer1.[英格蘭人姓氏]薩默綽号,性情溫順者,來源于中世紀英語,含義是“夏天”(summer)2.[英格蘭人姓氏]薩默Sumner的同化變體3.[愛爾蘭姓氏]薩默蓋爾語人名的英譯4Sumpter的同化異體,...
2026-07-03
夢幻西遊怎麼做輔助
夢幻西遊怎麼做輔助
精彩遊戲,快樂無窮無盡!這裡是夢幻西遊資訊集中營,每天為你分享不一樣的遊戲新動态。hello大家好,我是夢幻小九。夢幻西遊開服至今已經度過了十幾個春秋,那麼多過去了這款遊戲依然是國内最火的回合制網遊。夢幻西遊之所以經久不衰,主要是官方對玩家...
2026-07-03
小學生廣播體操武術操教程
小學生廣播體操武術操教程
小學生廣播體操武術操教程?本網訊(舒宇航)為嚴格落實“雙減政策”,豐富校園文化生活,提高課外活動質量,增強學生體質11月23日至25日,懷化市芷江縣民族職業中專學校舉辦2021年下學期廣播體操、武術操大賽,下面我們就來聊聊關于小學生廣播體操...
2026-07-03
合格職場人要知道的職場法則
合格職場人要知道的職場法則
職場潛規則-職場的陷阱法則:利益場的鬥争(一)聽得陷阱兩個字,我确信很多朋友會立即皺起眉頭,隐約有一種痛苦的感覺。各位親,你一定要明白,職場就是一個利益場,是一個人性博弈的場所,所以一定會出現一些人性的陷阱,那是很自然而然的事。(二)明朝的...
2026-07-03
00後職場團建建議取消
00後職場團建建議取消
現在大部分企業已經把團建歸類為公司的一種福利形式了,團建大緻可以分為:吃飯的、旅遊的、拓展訓練的或者生日會的,這些看上去很誘人的團建形式,為什麼現在的員工都不買賬反而很抗拒呢?公司的團建=拍照發圈某天,辦公室發出通知,告訴大家秉着公司家文化...
2026-07-03
Copyright 2023-2026 - www.tftnews.com All Rights Reserved