excel几个表合成一张_快速将多个excel表合并成一个excel表
應用場景:有很多張excel,而且excel表里面的結構基本一樣,如何快速將這些excel合并在一個excel頁面,便于后期分析和統計
技術實現:利用excel表的宏計算實現。
注意:金山的WPS沒有宏計算功能。只能用microsoft excel來實現。
具體如下:
1、我們需要把多個excel表都放在同一個文件夾里面,并在這個文件夾里面新建一個excel。如圖所示:
2、用microsoft excel打開新建的excel表,并右鍵單擊sheet1,找到“查看代碼”,單擊進去。進去之后就看到了宏計算界面。如圖所示:
3、然后我們把下面這些宏計算的代碼復制進去,然后找到工具欄上面的“運行”下的“運行子過程/用戶窗體”,代碼如下,如圖所示:
sub合并當前目錄下所有工作簿的全部工作表()dimmypath, myname, awbnamedim wb as workbook, wbn as string
dim g as long
dim num as long
dim box as stringapplication.screenupdating= falsemypath=activeworkbook.path
myname= dir(mypath & "\" & "*.xls")
awbname=activeworkbook.name
num= 0
do while myname <> ""
if myname <> awbname then
set wb = workbooks.open(mypath & "\" &myname)
num= num + 1
with workbooks(1).activesheet
.cells(.range("a65536").end(xlup).row + 2, 1) = left(myname, len(myname) - 4)for g = 1 tosheets.count
wb.sheets(g).usedrange.copy .cells(.range("a65536").end(xlup).row + 1, 1)nextwbn= wbn & chr(13) &wb.name
wb.closefalse
end with
end ifmyname= dir
looprange("a1").select
application.screenupdating= true
msgbox "共合并了" & num & "個工作薄下的全部工作表。如下:" & chr(13) & wbn, vbinformation, "提示"
end sub
關于[A65536]的含義:?在1995-2006年,excel工作簿包含65536行,但現在的office?2007中工作簿包含1048576行。[A65536]就是A列的最后一行的意思,這段話的意思就是,從A列最后一行向上找,找到有數據的行為止。 如果是[B65536]則是從列最后一行向上找,找到有數據的行為止。
4、運行之后,等待幾秒鐘,等運行完畢,就是合并完成之后,會有提示,點確定就可以了。查看合并后的數據,就是同一個文件夾里面17個excel表數據合并后的結果。效果如圖所示。
----------------------------------------------------------------------------------------------------------------------------------------------------------
參考資料:https://jingyan.baidu.com/article/f0062228d16ba9fbd3f0c82b.html?qq-pf-to=pcqq.c2c ? ? ? //如何快速把多個excel表合并成一個excel表
總結
以上是生活随笔為你收集整理的excel几个表合成一张_快速将多个excel表合并成一个excel表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kali2 安装docker_Docke
- 下一篇: ora 00900 已编译但有错误_or