วิธีแบ่งตารางขนาดใหญ่เป็นตารางขนาดเล็กหลาย ๆ ตารางใน 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
3. จากนั้นกด F5 ในกล่องโต้ตอบที่โผล่ขึ้นมาให้เลือกแถวส่วนหัวดูภาพหน้าจอ:
4. จากนั้นคลิก OKและในกล่องพร้อมต์ที่สองเลือกช่วงข้อมูลที่คุณต้องการแบ่งตามจำนวนแถวดูภาพหน้าจอ:
5. จากนั้นไปที่คลิก OK ในช่องพร้อมต์ที่สามให้ป้อนจำนวนแถวที่คุณต้องการแยกดูภาพหน้าจอ:
6. จากนั้นคลิก OK ปุ่มตารางหลักถูกแบ่งออกเป็นหลายแผ่นตามจำนวนแถวที่แสดงด้านล่างภาพหน้าจอ:
แบ่งตารางขนาดใหญ่ออกเป็นหลาย ๆ ตารางตามค่าคอลัมน์หรือจำนวนแถวด้วยคุณสมบัติที่น่าทึ่ง
โค้ดด้านบนอาจจะยากสำหรับผู้ใช้ส่วนใหญ่ แต่ที่นี่ฉันจะแนะนำฟีเจอร์ที่น่าทึ่ง แยกข้อมูล of Kutools สำหรับ Excel. ด้วยยูทิลิตี้นี้คุณสามารถแบ่งตารางขนาดใหญ่ออกเป็นหลาย ๆ ตารางตามคอลัมน์หลักหรือจำนวนแถวได้อย่างรวดเร็วและง่ายดาย
1. เลือกช่วงข้อมูลที่คุณต้องการแยกจากนั้นคลิก Kutools พลัส > แยกข้อมูลดูภาพหน้าจอ:
2. ใน แยกข้อมูลออกเป็นหลายแผ่นงาน กล่องโต้ตอบระบุการตั้งค่าตามความต้องการของคุณ:
(1. ) เลือก คอลัมน์เฉพาะ or แถวคงที่ จาก แยกตาม ส่วนตามที่คุณต้องการ
(2. ) ระบุชื่อแผ่นงานใหม่จากไฟล์ กฎระเบียบ รายการแบบเลื่อนลงคุณสามารถเพิ่มไฟล์ อุปสรรค or วิภัตติ ไปยังชื่อแผ่นงานด้วย
3. จากนั้นคลิก Ok และตอนนี้ตารางขนาดใหญ่ได้ถูกแบ่งออกเป็นตารางเล็ก ๆ หลายตารางในสมุดงานใหม่ ดูภาพหน้าจอ:
แยกตารางออกเป็นหลาย ๆ ตารางตามค่าคอลัมน์ | แบ่งตารางออกเป็นหลาย ๆ ตารางตามจำนวนแถว |
![]() | ![]() |
Kutools สำหรับ Excel - เพิ่มประสิทธิภาพ Excel ด้วยเครื่องมือที่จำเป็นกว่า 300 รายการ เพลิดเพลินกับฟีเจอร์ AI ฟรีถาวร! Get It Now
บทความที่เกี่ยวข้องเพิ่มเติม:
- แยกสมุดงานเพื่อแยกไฟล์ Excel ใน Excel
- คุณอาจต้องแยกสมุดงานขนาดใหญ่เพื่อแยกไฟล์ Excel โดยบันทึกแต่ละแผ่นงานของสมุดงานเป็นไฟล์ Excel แต่ละแผ่น ตัวอย่างเช่นคุณสามารถแบ่งสมุดงานออกเป็นไฟล์ Excel หลายไฟล์จากนั้นส่งแต่ละไฟล์ไปยังบุคคลอื่นเพื่อจัดการกับมัน ด้วยการทำเช่นนี้คุณจะได้รับบุคคลบางคนจัดการกับข้อมูลบางอย่างและรักษาข้อมูลของคุณให้ปลอดภัย บทความนี้จะแนะนำวิธีแยกสมุดงานขนาดใหญ่เพื่อแยกไฟล์ Excel ตามแต่ละแผ่นงาน
- แยกชื่อเต็มเป็นชื่อและนามสกุลใน Excel
- สมมติว่าคุณมีบัญชีรายชื่อเมื่อภาพหน้าจอแรกแสดงในคอลัมน์เดียวด้านล่างและคุณต้องแบ่งชื่อเต็มเป็นคอลัมน์ชื่อคอลัมน์ชื่อกลางและคอลัมน์นามสกุลตามภาพหน้าจอต่อไปนี้ ต่อไปนี้เป็นวิธีการที่ยุ่งยากเพื่อช่วยคุณแก้ปัญหานี้
- แบ่งคอลัมน์ยาวออกเป็นหลายคอลัมน์ใน Excel
- หากคุณมีข้อมูลคอลัมน์แบบยาวใน Excel ซึ่งจะเป็นปัญหาเมื่อดูข้อมูลเหล่านี้ แต่ตอนนี้ถ้าคุณสามารถแยกรายการยาว ๆ ออกเป็นหลายคอลัมน์ใน Excel ได้ก็จะทำให้การดูสะดวกขึ้น
- แยกคำหรือตัวเลขออกเป็นเซลล์แยกใน Excel
- หากคุณมีรายการตัวเลขหรือคำในแผ่นงานและตอนนี้คุณต้องแยกเนื้อหาของเซลล์ออกเป็นตัวอักษรในเซลล์ต่างๆตามภาพหน้าจอต่อไปนี้คุณจะจัดการกับงานนี้ใน Excel ได้อย่างไร?
- แบ่งรายการแบบยาวออกเป็นกลุ่มที่เท่ากันใน Excel
- หากคุณมีรายการข้อมูลจำนวนมากที่ต้องแบ่งออกเป็นกลุ่มเท่า ๆ กันหลายกลุ่มตามภาพหน้าจอต่อไปนี้คุณจะจัดการกับงานนี้อย่างรวดเร็วและง่ายดายใน Excel ได้อย่างไร?
สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน
เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...
แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก
- เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
- เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
- เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!