วิธีแบ่งข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ใน Excel
สมมติว่าคุณมีแผ่นงานที่มีข้อมูลจำนวนมากและตอนนี้คุณต้องแบ่งข้อมูลออกเป็นหลายแผ่นตาม ชื่อ - นามสกุล คอลัมน์ (ดูภาพหน้าจอต่อไปนี้) และชื่อจะถูกป้อนแบบสุ่ม บางทีคุณอาจเรียงลำดับก่อนจากนั้นคัดลอกและวางทีละแผ่นในแผ่นงานใหม่อื่น ๆ แต่ต้องใช้ความอดทนในการคัดลอกและวางซ้ำ ๆ วันนี้ฉันจะพูดคุยเกี่ยวกับเทคนิคด่วนในการแก้ปัญหานี้
แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วยรหัส VBA
แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วย Kutools for Excel
แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วยรหัส VBA
หากคุณต้องการแยกข้อมูลตามค่าคอลัมน์อย่างรวดเร็วและอัตโนมัติโค้ด VBA ต่อไปนี้เป็นตัวเลือกที่ดี กรุณาทำตามนี้:
1. กด ALT + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง
2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในหน้าต่างโมดูล
Sub Splitdatabycol()
'updateby 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
Dim xWS 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
Set xWS = Sheets.Add(after:=Worksheets(Worksheets.Count))
xWS.Name = myarr(i) & ""
Else
xWS.Move after:=Worksheets(Worksheets.Count)
End If
xWSTRg.Range(title).Copy
xWS.Paste Destination:=xWS.Range("A1")
ws.Range("A" & (titlerow + xTRg.Rows.Count) & ":A" & lr).EntireRow.Copy xWS.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และข้อมูลทั้งหมดในแผ่นงานที่ใช้งานอยู่จะถูกแบ่งออกเป็นหลายแผ่นงานตามค่าของคอลัมน์ และแผ่นงานที่แยกจะถูกตั้งชื่อด้วยชื่อเซลล์ที่แยก ดูภาพหน้าจอ:
หมายเหตุ: แผ่นงานแยกจะวางไว้ที่ส่วนท้ายของสมุดงานที่มีแผ่นงานหลักอยู่
แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วย Kutools for Excel
ในฐานะผู้เริ่มต้นใช้งาน Excel รหัส VBA แบบยาวนี้ค่อนข้างยากสำหรับเราและพวกเราส่วนใหญ่ยังไม่รู้วิธีแก้ไขโค้ดตามความต้องการ ฉันจะแนะนำเครื่องมือมัลติฟังก์ชั่นให้คุณ -Kutools สำหรับ Excelมัน แยกข้อมูล ยูทิลิตี้ไม่เพียง แต่ช่วยให้คุณแบ่งข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ได้ แต่ยังสามารถแบ่งข้อมูลตามจำนวนแถวได้อีกด้วย
หมายเหตุที่จะใช้สิ่งนี้ แยกข้อมูลประการแรกคุณควรดาวน์โหลดไฟล์ Kutools สำหรับ Excelแล้วใช้คุณสมบัตินี้อย่างรวดเร็วและง่ายดาย
หลังจากการติดตั้ง Kutools สำหรับ Excelโปรดทำตามนี้:
1. เลือกช่วงของข้อมูลที่คุณต้องการแยก
2. คลิก Kutools พลัส > แผ่นงาน > แยกข้อมูลดูภาพหน้าจอ:
3. ใน แยกข้อมูลออกเป็นหลายแผ่นงาน คุณต้อง:
1). เลือก คอลัมน์เฉพาะ ตัวเลือกใน แยกตาม และเลือกค่าคอลัมน์ที่คุณต้องการแบ่งข้อมูลตามในรายการดรอปดาวน์ (หากข้อมูลของคุณมีส่วนหัวและคุณต้องการแทรกลงในแผ่นงานใหม่แต่ละแผ่นโปรดตรวจสอบ ข้อมูลของฉันมีส่วนหัว ตัวเลือก.)
2). จากนั้นคุณสามารถระบุชื่อแผ่นงานแยกภายใต้ ชื่อแผ่นงานใหม่ ระบุกฎชื่อเวิร์กชีตจากไฟล์ กฎระเบียบ รายการแบบเลื่อนลงคุณสามารถเพิ่มไฟล์ อุปสรรค or วิภัตติ สำหรับชื่อแผ่นงานด้วย
3). คลิก OK ปุ่ม. ดูภาพหน้าจอ:
4. ตอนนี้ข้อมูลถูกแบ่งออกเป็นหลายแผ่นในสมุดงานใหม่
คลิกเพื่อดาวน์โหลด Kutools สำหรับ Excel และทดลองใช้ฟรีทันที!
แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วย Kutools for Excel
Kutools สำหรับ Excel มีเครื่องมือ Excel ที่มีประโยชน์มากกว่า 300 รายการ ทดลองใช้ฟรีโดยไม่มีข้อ จำกัด ใน 30 วัน ดาวน์โหลดทดลองใช้ฟรีทันที!
บทความที่เกี่ยวข้อง:
จะแบ่งข้อมูลออกเป็นหลายแผ่นตามจำนวนแถวได้อย่างไร?
เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด
Kutools สำหรับ Excel แก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%
- นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
- ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
- ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
- เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
- สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
- แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
- ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
- รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
- คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office/Excel 2007-2021 และ 365 รองรับทุกภาษา ง่ายต่อการปรับใช้ในองค์กรหรือองค์กรของคุณ คุณสมบัติเต็มรูปแบบ ทดลองใช้ฟรี 30 วัน รับประกันคืนเงินภายใน 60 วัน

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก
- เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
- เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
- เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!































