จัดแนวค่าที่ไม่ซ้ำกันในสองคอลัมน์ใน Excel


1
COL 1  COL 2
 A      E
 B      G 
 C      A
 G      A
 D      C
 E      F
 D      F
 F      F

ฉันอยากให้มันดูเหมือน:

COL 1  COL 2
 A      A
 BLANK  A
 B      BLANK
 C      C
 D      BLANK
 D      BLANK
 E      E
 F      F
 BLANK  F
 BLANK  F
 G      G

กรุณาช่วยฉันออกไป. ฉันมีจำนวนตันเป็นสองคอลัมน์และต้องการจัดเรียงตามที่แสดงด้านบน

คำตอบ:


1

ดูเหมือนว่าจะจัดระเบียบข้อมูลตัวอย่างที่คุณให้ใหม่อย่างถูกต้อง

Sub mcr_fix()
    Dim rw As Long, c As Long
    With ActiveSheet
        For c = 1 To 2
            With .Cells(1, 1).CurrentRegion.Columns(c)
                .Cells.Sort key1:=.Columns(1), order1:=xlAscending, _
                            Orientation:=xlTopToBottom, Header:=xlYes
            End With
        Next c
        rw = 3
        Do While CBool(Application.CountA(.Cells(rw, 1).Resize(1, 2)))
            If .Cells(rw, 1).Value > .Cells(rw, 2).Value Then
                .Cells(rw, 1).Insert Shift:=xlDown
            ElseIf .Cells(rw, 1).Value < .Cells(rw, 2).Value Then
                .Cells(rw, 2).Insert Shift:=xlDown
            End If
            rw = rw + 1
            If rw > 500 Then Exit Do
        Loop
    End With
End Sub

ฉันกำลังเขียนสิ่งที่คล้ายกันอยู่ตรงกลาง เยี่ยมมาก!
ผู้เบิกทาง

อาจต้องการรวมถึงวิธีการใช้งาน
ผู้บุกเบิก

@ เครื่องตรวจจับสัญญาณ - ฉันออกจากโค้ดของวงวนที่ไม่ได้อยู่ในขอบเขตเมื่อฉันคัดลอกและวางหลังจากการทดสอบ ฉันเพิ่งจะกลับไปให้คำแนะนำแก่ OP เกี่ยวกับเรื่องนี้
Jeeped

@AbeikuAcquah - หลังจากการตรวจสอบที่จะทำให้มันทำงานบนตัวอย่างขนาดเล็กที่คุณจะต้องลบIf rw > 500 Then Exit Doเพื่อให้ทำงานบนตันของตัวเลข
Jeeped

ว้าว. ขอบคุณมาก ๆ soo soo happy แต่ฉันมีการเปลี่ยนแปลงเล็กน้อยจากสิ่งที่ควรจะเป็น A2 ควรว่างเปล่า แต่ B และ A3 ควรเป็น B โปรดแก้ไขให้ฉัน thankx
Abeiku Acquah
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.