提示:其他語言是Google翻譯的。 你可以訪問 English 版本。
登入
x
or
x
x
註冊
x

or

如何通過Excel中的行數將數據拆分為多個工作表?

例如,我有一系列的數據列表,現在我想按行計數將它分成多個工作表,在這個例子中,我將按照每個5行分割它(參見以下屏幕截圖)。 有什麼方法可以幫助我們快速解決這個問題嗎? 在這裡我將介紹兩個技巧,讓您輕鬆完成。


DOC-分割數據逐rows1


-2



DOC-分割數據逐rows2
DOC-分割數據逐rows3
DOC-分割數據逐rows4
DOC-分割數據逐rows5

按VBA代碼的行數將數據拆分成多個工作表

通過Kutools for Excel將行數據拆分為多個工作表


箭頭藍色右泡 按VBA代碼的行數將數據拆分成多個工作表


以下VBA代碼可以幫助您按行數將行拆分成多個工作表,如下所示:

1。 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

2。 點擊 插入 > 模塊,並將以下代碼粘貼到模塊窗口中。

VBA:在Excel中按行數拆分數據。

Sub SplitData()
'Updateby20140617
Dim WorkRng As Range
Dim xRow As Range
Dim SplitRow As Integer
Dim xWs As Worksheet
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
SplitRow = Application.InputBox("Split Row Num", xTitleId, 5, Type:=1)
Set xWs = WorkRng.Parent
Set xRow = WorkRng.Rows(1)
Application.ScreenUpdating = False
For i = 1 To WorkRng.Rows.Count Step SplitRow
    resizeCount = SplitRow
    If (WorkRng.Rows.Count - xRow.Row + 1) < SplitRow Then resizeCount = WorkRng.Rows.Count - xRow.Row + 1
    xRow.Resize(resizeCount).Copy
    Application.Worksheets.Add after:=Application.Worksheets(Application.Worksheets.Count)
    Application.ActiveSheet.Range("A1").PasteSpecial
    Set xRow = xRow.Offset(SplitRow)
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

3。 然後按 F5 鍵來運行代碼,並彈出一個對話框來選擇要分割的範圍,然後單擊 OK,另一個對話框用於指定行數。 看截圖:

4. 點擊 OK,並且範圍按行數分成多個工作表。

注意:拆分工作表放置在主工作表的後面。


箭頭藍色右泡 通過Kutools for Excel將行數據拆分為多個工作表

以上代碼只能按指定的行數拆分數據,並且如果數據具有標題,則不會為每個工作表數據添加標題。

但隨著 Kutools for Excel拆分數據,您不僅可以為每個工作表數據插入標題,還可以指定新的拆分工作表名稱。

Kutools for Excel 包含了比300更方便的Excel工具。 免費試用30天無限制。 立即獲取

如果您已經安裝了Kutools for Excel,請按照以下步驟操作:

1。 選擇要分割的數據范圍。

2。 點擊 企業 > 工作表工具 > 拆分數據 (或 企業 > 拆分數據 ),看截圖:

DOC-分割數據逐rows6

3。 在 將數據拆分為多個工作表 對話框:

  • 選擇 固定行基於分割 選項,然後輸入要為每個工作表分割的行數。 (如果您的數據包含標題,並且您希望將它們插入到每個新的拆分工作表中,請檢查 我的數據有標題 選項。)
  • 然後,您可以指定拆分工作表名稱 新的工作表名稱 部分,從中選擇工作表名稱規則 規則 下拉列表中,您可以添加 字首 or 後綴 也是表格名稱。 看截圖:

DOC-分割數據逐rows7

4。 指定設置後,點擊 OK,並且所選數據已被每個5行分割為新工作簿的多個工作表。 並為每個新的工作表插入標題。 看截圖:

DOC-分割數據逐rows8

點擊了解更多關於此分割數據功能。

相關文章:

如何根據Excel中的列將數據拆分為多個工作表?



推薦的生產力工具

Office Tab

金星1 帶上方便的選項卡到Excel和其他Office軟件,就像Chrome,Firefox和新的Internet Explorer一樣。

Kutools for Excel

金星1 驚人! 提高您在5分鐘的生產力。 不需要任何特殊技能,每天保存兩個小時!

金星1 300 Excel的新功能,讓Excel變得簡單而強大:

  • 合併單元格/行/列而不丟失數據。
  • 合併和合併多個工作表和工作簿。
  • 比較範圍,複製多個範圍,將文本轉換為日期,單位和貨幣轉換。
  • 按顏色計算,分頁小計,高級分類和超級篩選,
  • 更多選擇/插入/刪除/文本/格式/鏈接/評論/工作簿/工作表工具...

Excel的Kutools屏幕截圖

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Max · 9 months ago
    Omg thank you so very much dude!
  • To post as a guest, your comment is unpublished.
    prasanna · 1 years ago
    Hi Thanks for this great code, but the concern is, here we can only split fixed number of rows, can you help me with split is based on some name or code, because i have different set of rows for each worksheet.
  • To post as a guest, your comment is unpublished.
    aparna · 2 years ago
    hi this works great but want the output as string how can i modify the code or i can say example : 'output',
  • To post as a guest, your comment is unpublished.
    Ralph · 2 years ago
    Thanks a lot for the fantastic VBA-Script. But how to modify it to keep the header row on every split?
  • To post as a guest, your comment is unpublished.
    Ralph · 2 years ago
    Thanks, for this fantastic VBA-Script. But how to configure it to repeat the header row on every split?