首页
/
每日頭條
/
職場
/
vba多個excel文件合并為一個表格
vba多個excel文件合并為一個表格
更新时间:2025-01-28 00:06:33

合并工作簿與合并工作表,是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
推荐阅读
黃渤曬照辟謠
黃渤曬照辟謠
搜狐娛樂訊近日,有網友拍到黃渤在跨年當天和一群友人在外灘遊玩。值得注意的是,黃渤和其中一位女子手挽着手,十分親密。當晚,還被拍到該女子幫黃渤整理衣領,格外細心,引發網友熱議。6日淩晨,黃渤曬照回應,照片中标明該女子是“完全無語的女經紀人”,...
2025-01-28
已經辭職了之後的辭職報告怎麼寫
已經辭職了之後的辭職報告怎麼寫
已經辭職了之後的辭職報告怎麼寫?現實中很多勞動者不重視離職文書,導緻後來與企業發生糾紛的時候,維權起來特别被動,因此喪失了向企業主張經濟補償金或者賠償金的權利,今天小編就來說說關于已經辭職了之後的辭職報告怎麼寫?下面更多詳細答案一起來看看吧...
2025-01-28
吳孟達死前最後一部電影
吳孟達死前最後一部電影
2月27日,香港金牌老戲骨吳孟達因肝癌不幸去世。此前他就因罹患肝癌住院治療,情況不容樂觀。如今,吳孟達好友發布聲明,遺憾地宣布68歲的吳孟達已經離開人世,之後的祭奠儀式将低調進行。據媒體爆料,吳孟達在發現身患癌症後,立即進行了手術,但彼時癌...
2025-01-28
電子廠和工廠哪個工資高
電子廠和工廠哪個工資高
在諸多工廠中,電子廠和食品廠屬于常年招工類型的,而且也是比較受工友們喜愛的類型,以前經常聽工友們說進廠打工不去電子廠就去食品廠,否則去其他地方太累了,像煉鋼廠、皮革廠都不太令人喜歡,比在電子廠和食品廠累多了,而且在這方面小編有親身體驗。當初...
2025-01-28
懷孕了進電子廠好嗎
懷孕了進電子廠好嗎
女工,在衆多電子廠中也算是一個比較大的群體了,也經常會有人會問和擔心,聽說在電子廠上班有輻射,會不會影響生育功能。小瑞是去年經人介紹認識了現在的老公,兩個人結婚後就去進廠打工了,在電子廠的品檢部工作。前半年的時候也沒有什麼,也沒注意,就是後...
2025-01-28
Copyright 2023-2025 - www.tftnews.com All Rights Reserved