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

จะเปลี่ยนทุกๆ 5 หรือ n แถวจากคอลัมน์เดียวเป็นหลายคอลัมน์ได้อย่างไร

doc เปลี่ยนทุก 5 แถว 1

สมมติว่าคุณมีข้อมูลยาวในคอลัมน์ A และตอนนี้คุณต้องการเปลี่ยนทุกๆ 5 แถวจากคอลัมน์ A ไปยังหลายคอลัมน์เช่นเปลี่ยน A1: A5 เป็น C6: G6, A6: A10 เป็น C7: G7 เป็นต้น ตามภาพหน้าจอที่แสดง คุณจะจัดการกับงานนี้ได้อย่างไรโดยไม่ต้องคัดลอกและวางซ้ำ ๆ ใน Excel

เปลี่ยนทุกๆ 5 หรือ n แถวจากคอลัมน์หนึ่งไปยังหลายคอลัมน์ด้วยสูตร

เปลี่ยนทุกๆ 5 หรือ n แถวจากหนึ่งคอลัมน์เป็นหลายคอลัมน์ด้วยรหัส VBA

ย้ายทุกๆ 5 หรือ n แถวจากคอลัมน์หนึ่งไปยังหลายคอลัมน์ด้วย Kutools for Excel


ใน Excel คุณสามารถใช้สูตรต่อไปนี้เพื่อเปลี่ยนทุก n แถวจากคอลัมน์หนึ่งไปยังหลายคอลัมน์ได้โปรดทำดังนี้:

1. ป้อนสูตรต่อไปนี้ลงในเซลล์ว่างที่คุณต้องการใส่ผลลัพธ์ C1 ตัวอย่างเช่น = ดัชนี ($ A: $ A, ROW (A1) * 5-5 + COLUMN (A1))ดูภาพหน้าจอ:

doc เปลี่ยนทุก 5 แถว 2

หมายเหตุ: ในสูตรข้างต้น A: A คือการอ้างอิงคอลัมน์ที่คุณต้องการเปลี่ยนและ A1 เป็นเซลล์แรกของคอลัมน์ที่ใช้หมายเลข 5 ระบุจำนวนคอลัมน์ที่ข้อมูลของคุณจะค้นหาคุณสามารถเปลี่ยนได้ตามความต้องการของคุณ และเซลล์แรกของรายการจะต้องอยู่ที่แถวแรกในแผ่นงาน

2. จากนั้นลากที่จับเติมไปทางขวาถึงห้าเซลล์แล้วลากที่จับเติมลงไปที่ช่วงของเซลล์จนกระทั่งแสดงเป็น 0 ดูภาพหน้าจอ:

doc เปลี่ยนทุก 5 แถว 3


แปลงทุกๆ 5 หรือ n แถวจากคอลัมน์เดียวเป็นหลายคอลัมน์:

ในการแปลงทุกๆ 5 หรือ n แถวจากหนึ่งคอลัมน์เป็นหลายคอลัมน์ Kutools สำหรับ Excel's ช่วงการแปลง ยูทิลิตี้สามารถช่วยคุณแก้งานนี้ได้โดยเร็วที่สุด นอกจากนี้ยังสามารถช่วยคุณในการเปลี่ยนช่วงของข้อมูลเป็นแถวหรือคอลัมน์เดียว คลิกเพื่อดาวน์โหลด Kutools for Excel!

doc เปลี่ยนทุก 5 แถว 10

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


หากคุณไม่สามารถใช้สูตรได้อย่างถูกต้องรหัส VBA ต่อไปนี้สามารถช่วยคุณได้

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

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

รหัส VBA: เปลี่ยนทุกๆ 5 หรือ n แถวจากคอลัมน์หนึ่งเป็นหลายคอลัมน์:

Public Sub TransposeData()
'updateby Extendoffice
    Dim xLRow As Long
    Dim xNRow As Long
    Dim i As Long
    Dim xUpdate As Boolean
    Dim xRg As Range
    Dim xOutRg As Range
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select data range(only one column):", "Kutools for Excel", xTxt, , , , , 8)
    Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
    If xRg Is Nothing Then Exit Sub
    If (xRg.Columns.Count > 1) Or _
       (xRg.Areas.Count > 1) Then
        MsgBox "the used range only contain one column", , "Kutools for Excel"
        Exit Sub
    End If
    Set xOutRg = Application.InputBox("please select output range(specify one cell):", "Kutools for Excel", xTxt, , , , , 8)
    If xOutRg Is Nothing Then Exit Sub
    Set xOutRg = xOutRg.Range(1)
    xUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    xLRow = xRg.Rows.Count
    For i = 1 To xLRow Step 5
        xRg.Cells(i).Resize(5).Copy
        xOutRg.Offset(xNRow, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
        xNRow = xNRow + 1
    Next
    Application.ScreenUpdating = xUpdate
End Sub

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

doc เปลี่ยนทุก 5 แถว 4

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

doc เปลี่ยนทุก 5 แถว 5

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

doc เปลี่ยนทุก 5 แถว 6

หมายเหตุ: ในรหัสด้านบนคุณสามารถเปลี่ยนหมายเลขได้ 5 ไปยังหมายเลขอื่น ๆ ที่คุณต้องการ


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

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

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

1. เลือกข้อมูลในคอลัมน์จากนั้นคลิก Kutools > พิสัย > ช่วงการแปลงดูภาพหน้าจอ:

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

doc เปลี่ยนทุก 5 แถว 8

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

doc เปลี่ยนทุก 5 แถว 9

4. จากนั้นคลิก OK และข้อมูลคอลัมน์ของคุณจะถูกย้ายทุกๆ 5 แถวตามภาพหน้าจอต่อไปนี้:

doc เปลี่ยนทุก 5 แถว 6

ดาวน์โหลดและทดลองใช้ 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
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (14)
ได้รับคะแนน 5 จาก 5 · การจัดอันดับ 1
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี! ฉันขอถามคุณเกี่ยวกับวิธีการเพิ่มเซลล์ว่างในระเบียน แทนที่จะเป็น 5 เนื่องจากข้อมูลที่ฉันกำลังจัดการไม่มีจำนวนแถวคงที่ ฉันเชื่อว่าส่วนที่ฉันควรเปลี่ยนอาจอยู่บริเวณส่วนนี้ของโค้ด: For i = 1 To xLRow Step 5 xRg.Cells(i).Resize(5).Copy xOutRg.Offset(xNRow, 0).PasteSpecial Paste: =xlPasteAll, Transpose:=True xNRow = xNRow + 1 Best
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
คุณได้รับคำตอบแบบเดียวกับที่ฉันมีปัญหาเดียวกันหรือไม่ คอลัมน์ไม่ได้รับการแก้ไขเป็นตัวเลข ฉันควรทำอย่างไร ฉันสามารถใช้อักขระตัวใดตัวหนึ่งเป็นตัวคั่นที่แบ่งการวนซ้ำและนับบรรทัดถัดไปและชุดข้อมูลใหม่ได้หรือไม่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันมีปัญหาเดียวกัน โดยที่คอลัมน์ไม่ได้รับการแก้ไข และมีบรรทัดว่าง แต่ฉันมีอักขระและจุดสิ้นสุดของชุดข้อมูลแต่ละชุดเหมือนกัน นั่นคือ "=" ฉันสามารถใช้สิ่งนี้เป็นตัวคั่น ที่แบ่งการวนซ้ำ และ บรรทัดถัดไปถือเป็นชุดข้อมูลใหม่ ?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สูตรใดที่จะย้ายทุกๆ 5 แถวเป็นคอลัมน์เดียว
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณมาก! มันมีประโยชน์จริงๆ :)
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มันดีมาก! ขอขอบคุณ! คุณช่วยฉันทำงานด้วยตนเองได้หลายชั่วโมง!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
= ดัชนี ($ A: $ A, ROW (A1) * 5-5 + COLUMN (A1))
มันง่ายมากและมีประโยชน์จริงๆ ขอบคุณมาก
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
นี่มันสุดยอดไปเลย!!! ขอบคุณมาก. ตัวอย่างของคุณคือสิ่งที่ฉันต้องการอย่างแท้จริง และมันได้ผลอย่างสวยงาม
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันลองใช้เฉพาะตัวเลือกสูตรและใช้งานได้ดี จนถึงขณะนี้มีการใช้ (สูตร Transpose กับ ctrl+shift+enter) แต่มีข้อเสียคือเราได้ลบแถวพิเศษจำนวนมาก เมื่อแถวที่จะย้ายเป็นจำนวนมากในลำดับหลักแสน การลบแถวเหล่านั้นใน excel นั้นเป็นไปไม่ได้หรือใช้เวลานาน
วิธีนี้ทำให้ชีวิตง่ายขึ้นโดยคัดลอกเฉพาะแถวที่ต้องการเท่านั้น... ขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณมาก _/\_ เยี่ยมมากกับ =INDEX($A:$A,ROW(B1)*5-5+COLUMN(B1))
ทำงานได้อย่างสมบูรณ์แบบ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี วิธีการทำเช่นนี้สำหรับ Colms ถึงแถว ขอขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันได้เขียนคำสั่งใหม่เป็นคำสั่งนี้:
=INDEX($A:$A,ROW(A1)+((คอลัมน์(A1)-2)*5))
สิ่งนี้จะดำเนินการกลับด้าน
ดังนั้น:
1
2
3
4
5
6
7
8
9
...
จะกลายเป็น
1, 6
2, 7
3, 8
4, 9
5, ...
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันลองทำตามที่เขียนไว้ และทั้งหมดที่ได้รับคือ Error:508
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
คุณเป็นอัจฉริยะ ขอบคุณ!
ได้รับคะแนน 5 จาก 5
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ