如何在Excel中將一個大表拆分為多個小表?

      網友投稿 571 2025-03-31

      如何在Excel中將一個大表拆分為多個小表?

      現在,如果您有一個包含多列和成百上千行數據的大型工作表,則希望根據列值或行數將該大型表拆分為多個小型表,以獲得以下結果。 您如何在Excel中處理此任務?


      主表 按列值將表拆分為多個表 按行數將表拆分為多個表

      使用VBA代碼根據列值將大表拆分為多個表

      使用VBA代碼根據特定的行數將一個大表拆分為多個表

      基于列值或行數將大型表拆分為多個表,具有驚人的功能

      使用VBA代碼根據列值將大表拆分為多個表

      若要根據特定的列值將此大表拆分為多個表,請使用以下VBA代碼。 請這樣做:

      1。 按住 ALT + F11 鍵打開 Microsoft Visual Basic應用程序 窗口。

      2。 點擊插頁 > 模塊,然后將以下代碼粘貼到 模塊 窗口。

      VBA代碼:按關鍵字列將一個大表拆分為多個表:

      Sub Splitdatabycol() by Extendoffice Dim lr As Long Dim ws As Worksheet Dim vcol, i As Integer Dim icol As Long Dim myarr As Variant Dim title As String Dim titlerow As Integer Dim xTRg As Range Dim xVRg As Range Dim xWSTRg As Worksheet On Error Resume Next Set xTRg = Application.InputBox("Please select the header rows:", "Kutools for Excel", "", Type:=8) If TypeName(xTRg) = "Nothing" Then Exit Sub Set xVRg = Application.InputBox("Please select the column you want to split data based on:", "Kutools for Excel", "", Type:=8) If TypeName(xVRg) = "Nothing" Then Exit Sub vcol = xVRg.Column Set ws = xTRg.Worksheet lr = ws.Cells(ws.Rows.Count, vcol).End(xlUp).Row title = xTRg.AddressLocal titlerow = xTRg.Cells(1).Row icol = ws.Columns.Count ws.Cells(1, icol) = "Unique" Application.DisplayAlerts = False If Not Evaluate("=ISREF(xTRgWs_Sheet!A1)") Then Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet" Else Sheets("xTRgWs_Sheet").Delete Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet" End If Set xWSTRg = Sheets("xTRgWs_Sheet") xTRg.Copy xWSTRg.Paste Destination:=xWSTRg.Range("A1") ws.Activate For i = (titlerow + xTRg.Rows.Count) To lr On Error Resume Next If ws.Cells(i, vcol) <> "" And Application.WorksheetFunction.Match(ws.Cells(i, vcol), ws.Columns(icol), 0) = 0 Then ws.Cells(ws.Rows.Count, icol).End(xlUp).Offset(1) = ws.Cells(i, vcol) End If Next myarr = Application.WorksheetFunction.Transpose(ws.Columns(icol).SpecialCells(xlCellTypeConstants)) ws.Columns(icol).Clear For i = 2 To UBound(myarr) ws.Range(title).AutoFilter field:=vcol, Criteria1:=myarr(i) & "" If Not Evaluate("=ISREF(" & myarr(i) & "!A1)") Then Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = myarr(i) & "" Else Sheets(myarr(i) & "").Move after:=Worksheets(Worksheets.Count) End If xWSTRg.Range(title).Copy Sheets(myarr(i) & "").Paste Destination:=Sheets(myarr(i) & "").Range("A1") ws.Range("A" & (titlerow + xTRg.Rows.Count) & ":A" & lr).EntireRow.Copy Sheets(myarr(i) & "").Range("A" & (titlerow + xTRg.Rows.Count)) Sheets(myarr(i) & "").Columns.AutoFit Next xWSTRg.Delete ws.AutoFilterMode = False ws.Activate Application.DisplayAlerts = True End Sub

      3。 粘貼代碼后,按 F5 鍵運行此代碼,并彈出提示框,請從數據中選擇標題行,請參見屏幕截圖:

      4。 然后,點擊 OK,然后會彈出另一個對話框,請選擇要用于拆分表的列數據,請參見屏幕截圖:

      5。 點擊 OK,此大表已通過位于主表之后的列值拆分為多個工作表。 并且新工作表使用列值命名。 看截圖:

      使用VBA代碼根據特定的行數將一個大表拆分為多個表

      如果需要根據行數將表拆分為多個表,則以下VBA代碼可以為您提供幫助。

      1。 按住 ALT + F11 鍵打開 Microsoft Visual Basic應用程序 窗口。

      2。 點擊 插頁 > 模塊,然后將以下代碼粘貼到 模塊 窗口。

      VBA代碼:按行數將一個大表拆分為多個表:

      Sub Splitdatabyrows() Updated by Extendoffice Dim WorkRng As Range Dim xRow As Range Dim SplitRow As Integer Dim xWs As Worksheet Dim xTRg As Range Dim xNTRg As Range Dim xIER On Error Resume Next xTitleId = "KutoolsforExcel" Set WorkRng = Application.Selection Set xTRg = Application.InputBox("Please select the header row:", xTitleId, "", Type:=8) If TypeName(xTRg) = "Nothing" Then Exit Sub Set WorkRng = Application.InputBox("Please select the data range(exclude the header row):", xTitleId, WorkRng.Address, Type:=8) If TypeName(WorkRng) = "Nothing" Then Exit Sub SplitRow = Application.InputBox("Split Row Num", xTitleId, Type:=1) If SplitRow = 0 Then Exit Sub Set xWs = WorkRng.Parent Set xRow = WorkRng.Rows(1) xIER = WorkRng.Rows.Count xIER = WorkRng.Row + xIER - 1 Application.ScreenUpdating = False For i = 1 To WorkRng.Rows.Count Step SplitRow resizeCount = SplitRow If (xIER - xRow.Row + 1) < SplitRow Then resizeCount = (xIER - xRow.Row + 1) End If xRow.Resize(resizeCount).Copy Set xWs = Application.Worksheets.Add(after:=Application.Worksheets(Application.Worksheets.Count)) If xIER > (xRow.Row + SplitRow - 1) Then xWs.Name = xRow.Row & " - " & (xRow.Row + SplitRow - 1) ElseIf xIER = xRow.Row Then xWs.Name = xRow.Row Else xWs.Name = xRow.Row & " - " & xIER End If Application.ActiveSheet.Range("A1").PasteSpecial Set xNTRg = Application.ActiveSheet.Range("A1") xTRg.Copy xNTRg.Insert Set xRow = xRow.Offset(SplitRow) Next Application.CutCopyMode = False Application.ScreenUpdating = True End Sub
      Copy

      3。 然后按 F5 鍵,在彈出的對話框中,選擇標題行,請參見屏幕截圖:

      4。 然后,點擊 OK,然后在第二個提示框中,選擇要按行計數拆分的數據范圍,請參見屏幕截圖:

      5。 然后,繼續點擊 OK按鈕,在第三個提示框中,輸入要分割的行數,請參見屏幕截圖:

      6。 然后,點擊 OK 按鈕,主表已根據行數分為多個工作表,如下圖所示:

      基于列值或行數將大型表拆分為多個表,具有驚人的功能

      如何在Excel中將一個大表拆分為多個小表?

      可能上述代碼對大多數用戶來說很困難,在這里,我將介紹一個很棒的功能-拆分數據 of Kutools for Excel。 使用此實用程序,您可以快速,輕松地按鍵列或行數將一個大表拆分為多個表。

      提示:申請這個 拆分數據 功能,首先,您應該下載 Kutools for Excel,然后快速輕松地應用該功能。

      安裝后 Kutools for Excel,請這樣做:

      1。 選擇要拆分的數據范圍,然后單擊 Kutools 加 > 拆分數據,請參見屏幕截圖:

      2。 在 將數據拆分為多個工作表對話框中,指定所需的設置

      (1.)選擇 特定欄 or 固定行 來自 分割依據 您需要的部分;

      (2.)從 規則 下拉列表中,您可以添加 字首 or 后綴 以及工作表名稱。

      3。 然后,點擊 Ok 按鈕,現在,大表已在新工作簿中拆分為多個小表。 查看屏幕截圖:

      按列值將表拆分為多個表 按行數將表拆分為多個表

      點擊下載Kutools for Excel并立即免費試用!

      更多相關文章:
      拆分工作簿以在Excel中分離Excel文件 您可能需要將一個大型工作簿拆分為單獨的Excel文件,然后將工作簿的每個工作表另存為單獨的Excel文件。 例如,您可以將工作簿拆分為多個單獨的Excel文件,然后將每個文件交付給不同的人來處理。 這樣,您可以使某些人處理特定數據,并確保您的數據安全。 本文將介紹根據每個工作表將大型工作簿拆分為單獨的Excel文件的方法。
      在Excel中將全名拆分為名字和姓氏 假設您有一個名稱列表,如下面的單個列中所示,第一個屏幕快照,則需要將全名拆分為名字列,中間名稱列和姓氏列,如下面的屏幕快照所示。 這里有一些棘手的方法可以幫助您解決此問題。
      在Excel中將長列拆分為多列 如果您在Excel中有很長的列數據,則在查看它們時會很麻煩。 但是現在,如果您可以在Excel中將如此長的列表拆分為多個列,則將使查看變得很方便。
      在Excel中將單詞或數字拆分為單獨的單元格 如果您在工作表中有數字或單詞的列表,現在需要按照下面的屏幕快照將單元格內容拆分為不同單元格上的字母,那么如何在Excel中處理此工作?
      在Excel中將長列表拆分成相等的組 如果需要將一長串數據分成多個相等的組,如下面的屏幕截圖所示,那么如何在Excel中快速輕松地處理此任務?

      最佳辦公效率工具

      Kutools for Excel解決了您的大多數問題,并使您的生產率提高了80%

      超級公式欄 (輕松編輯多行文本和公式); 閱讀視圖 (輕松讀取和編輯大量單元格); 粘貼到過濾范圍... 合并單元格/行/列 和保存數據; 拆分單元格內容; 合并重復的行和總和/平均值...防止細胞重復; 比較范圍... 選擇重復或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找在許多工作簿中; 隨機選擇...確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,復選框等... 收藏并快速插入公式,范圍,圖表和圖片; 加密單元 帶密碼 創建郵件列表 并發送電子郵件... 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和注釋之間轉換... 超級篩選 (將過濾方案保存并應用于其他工作表); 高級排序 按月/周/日,頻率及更多; 特殊過濾器 用粗體,斜體... 結合工作簿和工作表; 根據關鍵列合并表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF... 數據透視表分組依據 周號,周幾等 顯示未鎖定的單元格 用不同的顏色 突出顯示具有公式/名稱的單元格...
      閱讀更多 功能齊全的30天免費試用版... 采購...

      Office Tab - 為 Office 帶來選項卡式界面,讓您的工作更加輕松

      在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。 在同一窗口的新選項卡中而不是在新窗口中打開并創建多個文檔。 每天將您的工作效率提高50%,并減少數百次鼠標單擊!
      閱讀更多 功能齊全的30天免費試用版... 采購... 

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:家居定制如何做到數字化 - 關于家居定制數字化的全面指南
      下一篇:pyhon捕捉異常&&常見錯誤歸納!
      相關文章
      亚洲综合视频在线观看| 亚洲天堂一区二区| 亚洲人和日本人jizz| 西西人体44rt高清亚洲| 国产成人亚洲精品青草天美| 亚洲午夜国产精品无码老牛影视| 亚洲精品无码久久久久AV麻豆| 亚洲 自拍 另类小说综合图区| 成人亚洲综合天堂| 在线观看亚洲av每日更新| 久久精品国产亚洲Aⅴ香蕉| 亚洲中文字幕无码爆乳av中文| 中文字幕日韩亚洲| 亚洲最大AV网站在线观看| 亚洲午夜久久久影院| 国产亚洲精品国产| 久久精品亚洲中文字幕无码网站| 久久亚洲伊人中字综合精品| 97se亚洲综合在线| 亚洲国产精品张柏芝在线观看 | 亚洲成a人片在线观看中文app| 91亚洲视频在线观看| 中文字幕亚洲男人的天堂网络| 亚洲字幕AV一区二区三区四区| 亚洲老熟女五十路老熟女bbw| 亚洲第一街区偷拍街拍| 四虎精品亚洲一区二区三区| 亚洲人成色77777在线观看大| 国产亚洲精品福利在线无卡一| 久久亚洲国产午夜精品理论片| 亚洲AV日韩AV永久无码绿巨人| 亚洲综合久久久久久中文字幕| 亚洲一级毛片免观看| 亚洲乱亚洲乱妇24p| 亚洲成人国产精品| 亚洲中文字幕无码一区二区三区| 亚洲αv久久久噜噜噜噜噜| 亚洲神级电影国语版| 亚洲中文字幕一二三四区| 国产综合成人亚洲区| 最新精品亚洲成a人在线观看|