日常工作中我們經常會遇到多表合并的情況,手動粘貼複制過于麻煩,而且容易出錯,今天分享三種彙總小技巧。
方法一 Windows批處理命令如果需要彙總的表格是csv格式(如下圖所示,表格後綴為CSV),那麼一句windows批處理命令即可搞定。
首先在需要合并表格的文件夾内新建一個TXT文件,在文本文檔中輸入語句:
copy *.csv all.csv
其中“all”為彙總成的表格名稱,可随意修改。
之後保存文件,将文件後綴名修改為bat文件,如果修改之後還是文本文件的話,用第二種方法,将剛才的文件另存為,另存為界面需要注意兩點:
第一點:文件名記得帶.bat的後綴;
第二點:保存類型選擇【所有文件】
點擊确定,就會出現一個可執行文件,類型為【windows批處理文件】。
雙擊此文件,當前文件夾内所有的csv表格就會被彙總成一個表格,如下圖所示。
需要注意的是,此種方法隻适用于CSV文本,不适用于Excel表格(xls/xlsx後綴的電子表格)!
方法二 VBA批量彙總萬能的VBA專治各種疑難雜症,當然可以用來彙總多個工作簿,話不多說,代碼如下所示:
Sub 合并當前目錄下所有表格()
Dim Wb As Workbook
Application.ScreenUpdating = False
MyPath = ActiveWorkbook.Path
MyName = Dir(MyPath & "\" & "*.xlsx")
AWbName = ActiveWorkbook.Name
Do While MyName <> ""
If MyName <> AWbName Then
Set Wb = Workbooks.Open(MyPath & "\" & MyName)
c = ThisWorkbook.Sheets("sheet1").UsedRange.SpecialCells(xlCellTypeLastCell).Row
If c = 1 Then c = 0
End If
ActiveSheet.UsedRange.Copy ThisWorkbook.Sheets("sheet1").Cells(c 1, 1)
Wb.Close False
End If
MyName = Dir
Loop
Application.ScreenUpdating = True
MsgBox "已完成"
End Sub
首先在需要合并的文件夾内新建一個工作簿,打開并插入一個模塊,粘貼入代碼,并執行,程序運行數秒完成表格合并(這裡運行時間視表格大小與多少而定),動圖展示如下所示:
此方法适用于CSV、xls、xlsx等表格文件,隻需要對代碼做相應的修改即可。
方法三 Excel power queryExcel 2016版本及其以上可以利用此方法進行數據彙總,不需要編寫任何代碼,隻是操作步驟略長。
首先新建一個空白Excel表格(桌面或其它位置,别在需要合并的文件夾内新建),依次點擊【數據】—【從文件】—【從文件夾】。
選擇需要合并的文件夾,并點擊确定按鈕。
在查詢編輯器中新建一個自定義列,依次選擇【添加列】—【添加自定義列】,在公式内輸入【=Excel.Workbook([Content])】,點擊确定按鈕。
之後可以發現出現一個新增的列Custom,接着點擊Custom右側的雙向箭頭,在彈出框内取消勾選【使用原始列名作為前綴】。
取消勾選之後列又增加很多,找到Data列,點擊其雙向箭頭,在彈出框内勾選【使用原始列名作為前綴】。
這時候我們可以發現,表格已經完成合并,列Data.column1至Data.column3使我們需要的數據,将其它多餘的列一一删除。
按住Ctrl鍵,依次點選這三列,右鍵,選擇|“删除其它列”,接着點擊最上部【開始】——【關閉并上載】,合并之後的數據就會被加載到Excel工作表中。
再次聲明,此種方法隻适用于2016及其以上版本的Excel,其它低版本的Excel需要下載power query安裝包,并進行安裝才能使用。
小結windows批處理命令彙總表格數據,VBA彙總表格數據,power query彙總表格數據,三種數據彙總小技巧,推薦給大家。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!