用VBA可以做,類似的示例EXCEL 如何篩選出符合條件的數據並自動填充到新表裡??www.zhihu.com 步驟如下:1、將銷售數據按照產品分類匯總後,點擊截圖中框出的【選項】→【顯示報表篩選頁】,即可把每一類都生成一個單獨的sheet頁。 2、接著用一個工具將各個sheet頁拆分成多個excel表,即可得到你想要的。工具介紹如下:有一個APP叫做「Merge Excel Files」,主要功能如下:①合併excel表中的多個sheet頁到一個sheet頁中,還可選擇垂直合併(從上到下)或者水平合併(從左到右);②拆分excel表中的多個sheet頁到多個excel表中(即一個sheet頁為一個excel文件);③合併多個excel表到一個excel表中;題主的問題是「Excel中有好多個sheet,如何將這些sheet內的數據匯總到一張表中?」,即上述軟體功能的第1條。現在拿我這邊的一個「訂購」表實際操作一下,目的是合併「訂購」表中的sheet1、sheet2以及sheet3為一個sheet頁。具體操作如下: a、首先將數據導入到「Merge Excel Files」中如下圖所示區域。 b、我這邊是選擇的垂直合併,即從上到下合併數據。然後點擊添加所有文件,即將我們需要合併的三個sheet頁都選擇合併。如下圖所示。 c、最後點擊菜單欄的「merge excel」按鈕,合併並導出最終合併文件即可。 「Merge Excel Files」軟體的獲取方式如下:可自行網上搜索下載或者留言發送。 數據透視表啊。用插入數據透視表的方法,分分鐘完成分類匯總,然後在數據透視表中點擊各類的數據,立即生成該類別的明細。舉個栗子: 這是原始數據 這是生成的數據透視表雙擊每個類別的數量,比如類別三的31,立即在一個單獨的sheet中生成這個類別的明細表: 在單獨的工作表中生成類別三的明細如果我的回答對您有幫助,請隨手點贊,如果還有問題,可以在評論中繼續討論。 EXCEL弄這個貌似要手動或者VBA?反正很麻煩要是我就會導入到ACCESS裡面,然後建立查詢,使用「生成表」的功能,再全部導出成EXCEL表 不用VBA、不用手動也能輕鬆解決!可以用Alteryx來解決很多Excel中無法解決或者很難解決的問題。多數據表的合併、數據分拆為不同Excel文件在Alteryx裏都能輕鬆實現。 Alteryx在國外非常流行,全球數百萬的數據分析師都在使用Alteryx解決數據分析問題,而且Alteryx面向中國用戶已推出中文版,試用版地址:www.alteryx.cn。建議國內的分析師都體驗和學習一下Alteryx,它會打開一扇數據分析的神奇之門! 肯定要編寫vba代碼。百度一下,有不少。 用數據透視表來可以實現,【選項】→【顯示報表篩選頁】 Sub main() Dim d Set d = CreateObject("scripting.dictionary") Dim arr Dim k Dim i As Long, r As Long Application.ScreenUpdating = False Application.SheetsInNewWorkbook = 1 Dim wk As Workbook Dim sh As Worksheet With Sheets("明細表") arr = .Range("a1:f" .Cells(.Rows.Count, 1).End(xlUp).Row) For i = 2 To UBound(arr) If Not d.exists(arr(i, 1)) Then d(arr(i, 1)) = "" End If Next i For Each k In d.keys arr = .Range("a1:f" .Cells(.Rows.Count, 1).End(xlUp).Row) r = 1 For i = 2 To UBound(arr) If arr(i, 1) = k Then r = r + 1 arr(r, 1) = arr(i, 1) arr(r, 2) = arr(i, 2) arr(r, 3) = arr(i, 3) arr(r, 4) = arr(i, 4) arr(r, 5) = arr(i, 5) arr(r, 6) = arr(i, 6) End If Next i Set wk = Workbooks.Add Set sh = wk.Worksheets(1) sh.Range("a1").Resize(r, 6) = arr wk.SaveAs ThisWorkbook.Path Application.PathSeparator k ".xlsx" wk.Close Next k End With Application.ScreenUpdating = True End Sub 推薦閱讀:
用VBA可以做,類似的示例
步驟如下:
1、將銷售數據按照產品分類匯總後,點擊截圖中框出的【選項】→【顯示報表篩選頁】,即可把每一類都生成一個單獨的sheet頁。
2、接著用一個工具將各個sheet頁拆分成多個excel表,即可得到你想要的。工具介紹如下:
有一個APP叫做「Merge Excel Files」,主要功能如下:
①合併excel表中的多個sheet頁到一個sheet頁中,還可選擇垂直合併(從上到下)或者水平合併(從左到右);
②拆分excel表中的多個sheet頁到多個excel表中(即一個sheet頁為一個excel文件);
③合併多個excel表到一個excel表中;
題主的問題是「Excel中有好多個sheet,如何將這些sheet內的數據匯總到一張表中?」,即上述軟體功能的第1條。現在拿我這邊的一個「訂購」表實際操作一下,目的是合併「訂購」表中的sheet1、sheet2以及sheet3為一個sheet頁。具體操作如下:
a、首先將數據導入到「Merge Excel Files」中如下圖所示區域。
b、我這邊是選擇的垂直合併,即從上到下合併數據。然後點擊添加所有文件,即將我們需要合併的三個sheet頁都選擇合併。如下圖所示。
c、最後點擊菜單欄的「merge excel」按鈕,合併並導出最終合併文件即可。
「Merge Excel Files」
軟體的獲取方式如下:可自行網上搜索下載或者留言發送。
數據透視表啊。
用插入數據透視表的方法,分分鐘完成分類匯總,然後在數據透視表中點擊各類的數據,立即生成該類別的明細。
舉個栗子:
雙擊每個類別的數量,比如類別三的31,立即在一個單獨的sheet中生成這個類別的明細表:
如果我的回答對您有幫助,請隨手點贊,如果還有問題,可以在評論中繼續討論。
EXCEL弄這個貌似要手動或者VBA?反正很麻煩
要是我就會導入到ACCESS裡面,然後建立查詢,使用「生成表」的功能,再全部導出成EXCEL表
不用VBA、不用手動也能輕鬆解決!
可以用Alteryx來解決很多Excel中無法解決或者很難解決的問題。多數據表的合併、數據分拆為不同Excel文件在Alteryx裏都能輕鬆實現。
Alteryx在國外非常流行,全球數百萬的數據分析師都在使用Alteryx解決數據分析問題,而且Alteryx面向中國用戶已推出中文版,試用版地址:www.alteryx.cn。建議國內的分析師都體驗和學習一下Alteryx,它會打開一扇數據分析的神奇之門!
肯定要編寫vba代碼。百度一下,有不少。
用數據透視表來可以實現,【選項】→【顯示報表篩選頁】
Sub main() Dim d Set d = CreateObject("scripting.dictionary") Dim arr Dim k Dim i As Long, r As Long Application.ScreenUpdating = False Application.SheetsInNewWorkbook = 1 Dim wk As Workbook Dim sh As Worksheet With Sheets("明細表") arr = .Range("a1:f" .Cells(.Rows.Count, 1).End(xlUp).Row) For i = 2 To UBound(arr) If Not d.exists(arr(i, 1)) Then d(arr(i, 1)) = "" End If Next i For Each k In d.keys arr = .Range("a1:f" .Cells(.Rows.Count, 1).End(xlUp).Row) r = 1 For i = 2 To UBound(arr) If arr(i, 1) = k Then r = r + 1 arr(r, 1) = arr(i, 1) arr(r, 2) = arr(i, 2) arr(r, 3) = arr(i, 3) arr(r, 4) = arr(i, 4) arr(r, 5) = arr(i, 5) arr(r, 6) = arr(i, 6)
End If Next i Set wk = Workbooks.Add Set sh = wk.Worksheets(1)
sh.Range("a1").Resize(r, 6) = arr wk.SaveAs ThisWorkbook.Path Application.PathSeparator k ".xlsx" wk.Close Next k End With Application.ScreenUpdating = True End Sub