Excel表格中數據的拆分和匯總是我們經常會遇到的問題,之前寫過一篇利用VBA代碼匯總多個工作簿的數據。Excel表格複製多個工作簿的數據到一個工作表有時並不是所有的數據都能共享,這時就需要把數據按類別拆分到不同的工作表或者工作簿裡。
一.實例要求:
下圖是某水果超市的進貨需求表。我們需要按產品的名稱匯總出各個品種水果的需求量,而且要把不同的數據放在不同的工作簿裡發給不同的採購人員。
二.操作步驟:
1.Ctrl+A選擇數據→切換到插入選項卡→數據透視表→數據透視表的位置勾選現有工作表→選擇E1單元格→確定→將需求產品拖動到刪選器裡,將需求店鋪拖動到數據透視表的行裡,將需求量拖動到值裡(並點開該欄位右側倒三角將值欄位設置修改為求和)→切換到分析選項卡→點開選項下倒三角→點擊顯示報表篩選頁。(利用數據透視表的顯示報表篩選頁功能還可以批量新建工作表)
2.按住Shift鍵選擇所有生成的報表篩選頁→複製數據透視表→將數據粘貼成數值→Ctrl+H打開查找替換替換窗口→選項,將查找範圍改為工作簿→查找「行標籤」替換為「需求店鋪」,查找「求和項:」替換為「空白」。
至此,數據按類別拆分到不同的工作表已經完成,接下來講解的內容為將剛剛得到的數據拆分到不同的工作簿裡。
3.使用一段簡單的VBA代碼講各個工作表另存為單獨的工作簿
(1)按下F12將當前工作簿另存為啟用宏的工作簿→滑鼠右鍵任意一個工作表→選擇查看代碼,打開VBA編輯界面→插入一個模塊→複製以下代碼→保存
Sub 拆分()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Worksheets
sh.Activate
sh.Copy
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & sh.Name & ".xls", FileFormat:=xlOpenXMLWorkbook
Next
End Sub
(2)Alt+F8打開運行宏的界面→選擇拆分→點擊執行→等待片刻,拆分完成。
總結,本實例中安需求產品的種類進行的數據拆分,讀者朋友可以根據實際需求更改要拆分的依據。