Note: The other languages of the website are Google-translated. Back to English

วิธีแบ่งรายการยาวเป็นกลุ่มเท่า ๆ กันใน Excel

doc แยกรายการเป็นกลุ่ม 4

หากคุณมีรายการข้อมูลจำนวนมากที่ต้องแบ่งออกเป็นกลุ่มเท่า ๆ กันหลายกลุ่มตามภาพหน้าจอต่อไปนี้คุณจะจัดการกับงานนี้อย่างรวดเร็วและง่ายดายใน Excel ได้อย่างไร?

แบ่งรายการยาวออกเป็นกลุ่มเท่า ๆ กันหลาย ๆ กลุ่มด้วยรหัส VBA

แบ่งรายการแบบยาวออกเป็นกลุ่มเท่า ๆ กันหลาย ๆ กลุ่มด้วย Kutools for Excel


ยกเว้นการคัดลอกและวางข้อมูลทีละรายการโค้ด VBA ต่อไปนี้สามารถช่วยคุณได้โปรดทำตามขั้นตอนต่อไปนี้:

1. กด ALT + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในไฟล์ โมดูล หน้าต่าง.

รหัส VBA: แบ่งรายการยาว ๆ ออกเป็นกลุ่มเท่า ๆ กัน

Sub SplitIntoCellsPerColumn()
'updateby Extendoffice
    Dim xRg As Range
    Dim xOutRg As Range
    Dim xCell As Range
    Dim xTxt As String
    Dim xOutArr As Variant
    Dim I As Long, K As Long
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
Sel:
    Set xRg = Nothing
    Set xRg = Application.InputBox("please select data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Areas.Count > 1 Then
        MsgBox "does not support multiple selections, please select again", vbInformation, "Kutools for Excel"
        GoTo Sel
    End If
    If xRg.Columns.Count > 1 Then
        MsgBox "does not support multiple columns,please select again", vbInformation, "Kutools for Excel"
        GoTo Sel
    End If
    Set xOutRg = Application.InputBox("please select a cell to put the result:", "Kutools for Excel", , , , , , 8)
    If xOutRg Is Nothing Then Exit Sub
    I = Application.InputBox("the number of cell per column:", "Kutools for Excel", , , , , , 1)
    If I < 1 Then
        MsgBox "incorrect enter", vbInformation, "Kutools for Excel"
        Exit Sub
    End If
    ReDim xOutArr(1 To I, 1 To Int(xRg.Rows.Count / I) + 1)
    For K = 0 To xRg.Rows.Count - 1
      xOutArr(1 + (K Mod I), 1 + Int(K / I)) = xRg.Cells(K + 1)
    Next
    xOutRg.Range("A1").Resize(I, UBound(xOutArr, 2)) = xOutArr
End Sub

3. จากนั้นกด F5 คีย์เพื่อเรียกใช้รหัสนี้และในช่องที่โผล่ขึ้นมาโปรดเลือกคอลัมน์ที่คุณต้องการแบ่งออกเป็นหลายกลุ่มดูภาพหน้าจอ:

doc แยกรายการเป็นกลุ่ม 1

4. และคลิก OK จากนั้นเลือกเซลล์ที่คุณต้องการค้นหาผลลัพธ์ในกล่องพร้อมต์ต่อไปนี้ดูภาพหน้าจอ:

doc แยกรายการเป็นกลุ่ม 2

5. คลิก OKและโปรดป้อนจำนวนเซลล์ที่คุณต้องการแยกต่อคอลัมน์ในกล่องพร้อมต์ดูภาพหน้าจอ:

doc แยกรายการเป็นกลุ่ม 3

6. สุดท้ายคลิก OK เพื่อสิ้นสุดรหัสและข้อมูลรายการที่เลือกถูกแบ่งออกเป็นกลุ่มเท่า ๆ กันหลายกลุ่มตามที่คุณต้องการดูภาพหน้าจอ:

doc แยกรายการเป็นกลุ่ม 4


ถ้าคุณได้ติดตั้ง Kutools สำหรับ Excelเดียวกันกับที่ ช่วงการแปลง คุณลักษณะนี้คุณสามารถแบ่งรายการยาว ๆ ออกเป็นหลายคอลัมน์และแถวได้อย่างรวดเร็วนอกจากนี้คุณยังสามารถรวมหลายคอลัมน์เป็นรายการเดียวได้อีกด้วย

Kutools สำหรับ Excel : ด้วย Add-in ของ Excel ที่มีประโยชน์มากกว่า 300 รายการทดลองใช้ฟรีโดยไม่มีข้อ จำกัด ใน 30 วัน. 

หลังจากการติดตั้ง Kutools สำหรับ Excelโปรดดำเนินการดังนี้:

1. เลือกรายการแบบยาวที่คุณต้องการแยกจากนั้นคลิก Kutools > พิสัย > ช่วงการแปลงดูภาพหน้าจอ:

2. ใน ช่วงการแปลง ใหเลือก คอลัมน์เดียวถึงช่วง ภายใต้ ประเภทการแปลง จากนั้นตรวจสอบ ค่าคงที่ และระบุจำนวนเซลล์ต่อแถวในกล่องดูภาพหน้าจอ:

doc แยกรายการเป็นกลุ่ม 7

3. จากนั้นคลิก Okและเลือกเซลล์ที่คุณต้องการค้นหาผลลัพธ์ในกล่องพร้อมต์ดูภาพหน้าจอ:

doc แยกรายการเป็นกลุ่ม 8

4. และคลิก OK ข้อมูลในรายการจะถูกแบ่งออกเป็นหลายกลุ่มเท่า ๆ กันตามที่คุณต้องการ

ดาวน์โหลดและทดลองใช้ Kutools for Excel ฟรีทันที!


Kutools สำหรับ Excel: ด้วย Add-in ของ Excel ที่มีประโยชน์มากกว่า 300 รายการให้ทดลองใช้ฟรีโดยไม่มีข้อ จำกัด ใน 30 วัน ดาวน์โหลดและทดลองใช้ฟรีทันที!

เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (8)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มันมีประโยชน์มาก! คำถามหนึ่งข้อ: ในโค้ด VBA ฉันจะเปลี่ยนเอาต์พุตได้อย่างไร ดังนั้นแทนที่จะเป็น xRg.Rows.Count / I = จำนวนคอลัมน์เอาต์พุต เอาต์พุตจะถูกสร้างขึ้นเป็น xRg.Rows.Count / I = จำนวนแถวที่ส่งออกโดย I เป็นจำนวนคอลัมน์ต่อแถว
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันคัดลอกรหัสและ Excel 365 แจ้งข้อผิดพลาดทางไวยากรณ์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันจะเปลี่ยนจากจำนวนเซลล์ต่อคอลัมน์เป็นจำนวนคอลัมน์ที่ต้องการได้อย่างไร เพื่อให้ข้อมูลถูกแบ่งเท่า ๆ กันระหว่างจำนวนคอลัมน์แทนที่จะเลือกจำนวนที่จะมีในแต่ละคอลัมน์?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
รหัสใช้งานได้ดีสำหรับฉัน ฉันจะเปลี่ยนจากการถามว่าแต่ละคอลัมน์มีกี่คอลัมน์เป็นจำนวนคอลัมน์ที่ต้องการได้อย่างไร เพื่อแบ่งข้อมูลออกเป็นชุดของคอลัมน์เท่าๆ กัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีค่ะ คุณตรีเนตร
บทความต่อไปนี้อาจช่วยคุณได้ ในบทความนั้นมีสูตรบางอย่างที่อาจตรงกับความต้องการของคุณ โปรดตรวจสอบ:
https://www.extendoffice.com/documents/excel/681-excel-change-columns-to-rows.html
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ลิงก์บอกฉันว่าจะทำสิ่งเดียวกันได้อย่างไร มันไม่ได้บอกฉันถึงวิธีบอกรหัสหรือสูตรว่าฉันต้องการคอลัมน์กี่คอลัมน์...มีกี่คอลัมน์ในแต่ละคอลัมน์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีค่ะ คุณ Tpdixon
ในบทความนั้น สูตร: =OFFSET($A$1,COLUMNS($A1:A1)-1+(ROWS($1:1)-1)*5 สามารถช่วยให้คุณแยกรายการออกเป็นหลายคอลัมน์ได้ คุณเพียงแค่ต้องการ หากต้องการเปลี่ยนหมายเลข 5 เป็นหมายเลขอื่นที่คุณต้องการ จะแสดงหมายเลขคอลัมน์
หลังจากป้อนสูตรนี้แล้ว คุณควรลากที่จับเติมไปทางขวาด้วย 5 เซลล์
โปรดลอง ขอบคุณ!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
gracias por โปรดปราน nos colaboran
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ