ไปยังเนื้อหาหลัก

วิธีคัดลอกและวางแถวหรือคอลัมน์ในลำดับย้อนกลับใน Excel

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

คัดลอกและวางรายการคอลัมน์หรือแถวตามลำดับย้อนกลับด้วยสูตร

คัดลอกและวางช่วงของคอลัมน์หรือแถวตามลำดับย้อนกลับด้วยรหัส VBA

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


คัดลอกและวางรายการคอลัมน์หรือแถวตามลำดับย้อนกลับด้วยสูตร

คัดลอกและวางรายการคอลัมน์ตามลำดับย้อนกลับในแนวตั้ง

หากคุณต้องการย้อนกลับรายการเซลล์คอลัมน์คุณสามารถใช้สูตรด้านล่าง:

ป้อนหรือคัดลอกสูตรต่อไปนี้ลงในเซลล์ว่างที่คุณต้องการย้อนกลับลำดับคอลัมน์:

=OFFSET($A$15,-(ROW(A1)-1),0)

หมายเหตุ: ในสูตรข้างต้น A1 เป็นเซลล์แรกในคอลัมน์และ A15 คือเซลล์สุดท้ายในคอลัมน์

จากนั้นลากที่จับเติมลงไปที่เซลล์เพื่อแยกค่าของเซลล์ในลำดับย้อนกลับดังภาพด้านล่างที่แสดง:


คัดลอกและวางรายการแถวตามลำดับย้อนกลับในแนวนอน

หากต้องการคัดลอกและวางรายการแถวตามลำดับย้อนกลับโปรดใช้สูตรต่อไปนี้:

ป้อนหรือคัดลอกสูตรนี้ลงในเซลล์ว่าง:

=OFFSET($A$1,,COUNTA(1:1)-COLUMN(A1),)

หมายเหตุ: ในสูตรข้างต้น A1 เป็นเซลล์แรกในแถวและ 1:1 คือหมายเลขแถวที่ข้อมูลของคุณอยู่ หากข้อมูลของคุณอยู่ในแถวที่ 10 คุณควรเปลี่ยนเป็น 10:10

จากนั้นลากจุดจับเติมไปทางขวาไปยังเซลล์ที่คุณต้องการใช้สูตรนี้จนกว่าค่าทั้งหมดจะแยกออกมาและคุณจะได้รับค่าทั้งหมดที่กลับด้านในแนวนอนดูภาพหน้าจอ:


คัดลอกและวางช่วงของคอลัมน์หรือแถวตามลำดับย้อนกลับด้วยรหัส VBA

หากคุณต้องการคัดลอกและวางช่วงของคอลัมน์หรือแถวในลำดับย้อนกลับที่นี่ฉันจะแนะนำรหัส VBA เพื่อแก้ปัญหาได้อย่างรวดเร็วและง่ายดาย โปรดทำตามขั้นตอนต่อไปนี้:

คัดลอกและวางรายการคอลัมน์ตามลำดับย้อนกลับในแนวตั้ง

1. ขั้นแรกคุณควรคัดลอกและวางข้อมูลของคุณลงในตำแหน่งใหม่จากนั้นกดไฟล์ ALT + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

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

รหัส VBA: คัดลอกและวางช่วงของเซลล์ตามลำดับย้อนกลับในแนวตั้ง

Sub Flipvertically()
'updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
Dim i As Integer, j As Integer, k As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Arr = WorkRng.Formula
For j = 1 To UBound(Arr, 2)
    k = UBound(Arr, 1)
    For i = 1 To UBound(Arr, 1) / 2
        xTemp = Arr(i, j)
        Arr(i, j) = Arr(k, j)
        Arr(k, j) = xTemp
        k = k - 1
    Next
Next
WorkRng.Formula = Arr
End Sub

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

4. จากนั้นคลิก OK และช่วงข้อมูลถูกย้อนกลับในแนวตั้งตามภาพหน้าจอด้านล่างที่แสดง:


คัดลอกและวางช่วงของเซลล์ตามลำดับย้อนกลับในแนวนอน

หากต้องการย้อนกลับช่วงข้อมูลตามลำดับแนวนอนโปรดใช้รหัส VBA ด้านล่าง:

รหัส VBA: คัดลอกและวางช่วงของเซลล์ตามลำดับย้อนกลับในแนวนอน

Sub Fliphorizontally()
'updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
Dim i As Integer, j As Integer, k As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Arr = WorkRng.Formula
For i = 1 To UBound(Arr, 1)
    k = UBound(Arr, 2)
    For j = 1 To UBound(Arr, 2) / 2
        xTemp = Arr(i, j)
        Arr(i, j) = Arr(i, k)
        Arr(i, k) = xTemp
        k = k - 1
    Next
Next
WorkRng.Formula = Arr
End Sub

หลังจากเรียกใช้รหัสนี้คุณจะได้รับภาพหน้าจอต่อไปนี้ตามที่คุณต้องการ:


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

หากคุณไม่คุ้นเคยกับสูตรข้างต้นและรหัส VBA ที่นี่ฉันจะแนะนำเครื่องมือง่ายๆ -Kutools สำหรับ Excelเดียวกันกับที่ พลิกช่วงแนวตั้ง และ พลิกช่วงแนวนอน คุณสามารถย้อนกลับช่วงของเซลล์ในแนวตั้งและแนวนอนได้ด้วยการคลิกเพียงครั้งเดียว

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

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

คัดลอกและวางช่วงของเซลล์ตามลำดับย้อนกลับในแนวนอน

1. เลือกช่วงของเซลล์จากนั้นคลิก Kutools > พิสัย > พลิกช่วงแนวตั้ง > ทั้งหมด (เฉพาะค่าพลิก)ดูภาพหน้าจอ:

2. จากนั้นช่วงของค่าเซลล์ได้รับการย้อนกลับในแนวตั้งพร้อมกันดูภาพหน้าจอ:


คัดลอกและวางช่วงของเซลล์ตามลำดับย้อนกลับในแนวนอน

1. เลือกช่วงของเซลล์จากนั้นคลิก Kutools > พิสัย > พลิกช่วงแนวนอน > ทั้งหมด (เฉพาะค่าพลิก)ดูภาพหน้าจอ:

2. จากนั้นค่าของเซลล์ทั้งหมดในการเลือกจะถูกย้อนกลับในแนวนอนทันทีดูภาพหน้าจอ:

คลิกเพื่อดาวน์โหลด Kutools สำหรับ Excel และทดลองใช้ฟรีทันที!


คัดลอกและวางบทความที่เกี่ยวข้องเพิ่มเติม:

  • คัดลอกและวางเซลล์ที่ผสานไปยังเซลล์เดียวใน Excel
  • โดยปกติเมื่อคุณคัดลอกเซลล์ที่ผสานและวางลงในเซลล์อื่นเซลล์ที่ผสานจะถูกวางโดยตรง แต่คุณต้องการวางเซลล์ที่ผสานเหล่านี้ลงในเซลล์เดียวตามภาพหน้าจอต่อไปนี้เพื่อให้คุณสามารถจัดการกับข้อมูลได้ตามที่คุณต้องการ บทความนี้ฉันจะพูดถึงวิธีการคัดลอกและวางเซลล์ที่ผสานลงในเซลล์เดียว
  • คัดลอกคอลัมน์และวางเฉพาะระเบียนเฉพาะใน Excel
  • สำหรับคอลัมน์ที่มีรายการที่ซ้ำกันจำนวนมากคุณอาจต้องได้รับสำเนาของรายการนี้โดยมีเฉพาะค่าที่ไม่ซ้ำกัน คุณจะทำอย่างไรเพื่อให้บรรลุเป้าหมายนี้? ในบทความนี้เรามีสองวิธีในการวางเฉพาะระเบียนที่ไม่ซ้ำกันจากรายการคอลัมน์ใน Excel
  • คัดลอกข้อมูลจากแผ่นงานที่มีการป้องกัน
  • สมมติว่าคุณได้รับไฟล์ Excel จากบุคคลอื่นซึ่งมีเวิร์กชีตได้รับการปกป้องโดยผู้ใช้ตอนนี้คุณต้องการคัดลอกและวางข้อมูลดิบลงในสมุดงานใหม่อื่น แต่ไม่สามารถเลือกและคัดลอกข้อมูลในแผ่นงานที่มีการป้องกันได้เนื่องจากผู้ใช้ยกเลิกการเลือกตัวเลือกเลือกเซลล์ที่ถูกล็อกและเลือกเซลล์ที่ปลดล็อกเมื่อปกป้องแผ่นงาน
  • คัดลอกข้อมูลไปยังแผ่นงานอื่นด้วยตัวกรองขั้นสูงใน Excel
  • โดยปกติเราสามารถใช้คุณสมบัติตัวกรองขั้นสูงเพื่อดึงข้อมูลจากข้อมูลดิบในแผ่นงานเดียวกันได้อย่างรวดเร็ว แต่ในบางครั้งเมื่อคุณพยายามคัดลอกผลลัพธ์ที่กรองแล้วไปยังแผ่นงานอื่นคุณจะได้รับข้อความเตือนดังต่อไปนี้ ในกรณีนี้คุณจะจัดการกับงานนี้ใน Excel ได้อย่างไร?

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

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

  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ และการเก็บรักษาข้อมูล แยกเนื้อหาของเซลล์ รวมแถวที่ซ้ำกันและผลรวม / ค่าเฉลี่ย... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แทรกสูตรที่ชื่นชอบและรวดเร็ว, ช่วงแผนภูมิและรูปภาพ; เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • การจัดกลุ่มตาราง Pivot ตาม จำนวนสัปดาห์วันในสัปดาห์และอื่น ๆ ... แสดงปลดล็อกเซลล์ที่ถูกล็อก ด้วยสีที่ต่างกัน เน้นเซลล์ที่มีสูตร / ชื่อ...
kte แท็บ 201905
  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
Comments (3)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
OFFSET($A$15,-(ROW(A1)-1),0) and OFFSET($A$1,,COUNTA(1:1)-COLUMN(A1),) do not work when the data is not located in the first row or column.
these functions seem to work better:

Mirror row:
suppose the data is located in G11:K11
OFFSET($G$11,,COUNTA(11:11)-COUNTA($G$11:G11),) ........ OFFSET($G$11,,COUNTA(11:11)-COUNTA($G$11:K11),)

Mirror column:
suppose the data is located in E22:E26
OFFSET($E$22,ROW($E$26)-ROW(E22),0) ........ OFFSET($E$22,ROW($E$26)-ROW(E26),0)
Rated 5 out of 5
This comment was minimized by the moderator on the site
Hello Nasrin,

How are you. I tried your formulas and they work perfectly. Thanks for your share. We will take your advice. Have a great day.

Sincerely,
Mandy
This comment was minimized by the moderator on the site
Me funcionó la opción del código VBA. Muchas gracias!!!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations