首页
/
每日頭條
/
職場
/
vba多個excel文件合并為一個表格
vba多個excel文件合并為一個表格
更新时间:2026-09-08 08:01:43

合并工作簿與合并工作表,是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
推荐阅读
一年有幾個工作日
一年有幾個工作日
一年有幾個工作日?有250天,一年工作日=365天-104天(休息日)-11天(法定節假日)=250天,今天小編就來聊一聊關于一年有幾個工作日?接下來我們就一起去研究一下吧!一年有幾個工作日有250天,一年工作日=365天-104天(休息日...
2026-09-08
服從領導安排怎麼描述
服從領導安排怎麼描述
服從領導安排怎麼描述?工作不挑肥揀瘦,惟領導馬首是瞻領導指東打東,指西打西時時刻刻提醒自己,領導安排的工作沒有折扣,隻有認真地努力地圓滿地完成,我來為大家科普一下關于服從領導安排怎麼描述?下面希望有你要的答案,我們一起來看看吧!服從領導安排...
2026-09-08
人壽離職通知書
人壽離職通知書
人壽離職通知書?韶華易逝,青春無悔;時光荏苒,歲月如歌4月22日,富德生命人壽吉安中心支公司舉行了一場溫馨隆重的退休員工歡送會,慶祝員工石芳同志光榮退休,我來為大家科普一下關于人壽離職通知書?下面希望有你要的答案,我們一起來看看吧!人壽離職...
2026-09-08
超級瑪麗5号重疾45歲保費多少
超級瑪麗5号重疾45歲保費多少
張淼保險工作室:超級瑪麗5号,重疾複原金??是否會是重疾險新的進化方向!?這些年各公司的重疾險産品,已經高度【同質化】了。作為從業者,真心感到了審美疲勞。而越來越多高度相似的保險産品,也為消費者的選擇帶來了新的信息壁壘——看的越多反而越糊塗...
2026-09-08
企業如何留住員工
企業如何留住員工
企業如何留住員工?薪資留人根據調查顯示,有高達45%的員工離職的原因是薪資對于關于錢,沒有什麼好隐藏和不可言說的當企業不能給予他們相同的回報的時候,離開當然也就理所當然了,現在小編就來說說關于企業如何留住員工?下面内容希望能幫助到你,我們來...
2026-09-08
Copyright 2023-2026 - www.tftnews.com All Rights Reserved