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

合并工作簿與合并工作表,是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
推荐阅读
狼人殺各職業的詳細講解
狼人殺各職業的詳細講解
一、白癡神白癡:好人陣營中的一員,其獲勝條件與村民一緻,即狼人全沒。技能:白癡若是被投票出局,可以翻開自己的身份牌,免疫此次放逐,之後可以正常發言,但不能投票,狼人仍需要擊殺他一次才能讓他死亡。但若是白癡因非投票原因死亡,則無法發動技能,立...
2026-09-05
美團騎手招新
美團騎手招新
美團騎手招新?新京報貝殼财經訊(記者陳維城)5月26日,美團配送宣布,面向北京美團外賣商家開展“共享用工”招募,由商家申請将員工注冊為駐店騎手,優先配送本店外賣訂單,配送服務所得全部歸騎手本人所有目前,美團配送在房山區已推進了與首批商家的“...
2026-09-05
湖南聯通總經理是誰
湖南聯通總經理是誰
運營商财經吳碧慧/文一直以來,山東聯通在集團以及在當地友商中的發展排名都很靠前,一度使得友商競争壓力很大,并且在去年的時候,山東聯通旗下就有三家地市分公司列入“集團戰略業務名單”之中,可見業績規模不小。此次運營商财經網試圖揭秘當地重要的三家...
2026-09-05
12缸發動機低速幾個缸工作
12缸發動機低速幾個缸工作
4缸、6缸、8缸、10缸、12缸發動機是怎麼工作的?直觀的機械動圖演示其工作過程。▲直列四缸發動機直列四缸是内燃機的汽缸排列型式之一,在排量小于2.0升的四缸内燃機中最常見。因為直列四缸的四個氣缸成直線排列,所以又叫同軸四缸。▲直列四缸發動...
2026-09-05
40歲辭職感悟
40歲辭職感悟
40歲,可以是年富力強,也可以是人到中年。就看職場如何選擇你,你自己沒辦法界定。40歲前的蘿子是一家世界500強公司的高管,類似女強人類型,但因在上層公司領導更叠時,沒站好隊,新領導就位後,蘿子就被邊緣化了。但究其最最根本原因,蘿子是被更年...
2026-09-05
Copyright 2023-2026 - www.tftnews.com All Rights Reserved