ทุกวัน ผู้ใช้ Excel ต้องจัดการกับรายการซ้ำในชุดข้อมูล ในกรณีนั้น ฟีเจอร์ของ Excel Advanced Filter (ตัวกรองขั้นสูง) สำหรับบันทึกที่ไม่ซ้ำ (unique records only) เป็นทางออกที่สะดวก เราสามารถดำเนินการกรองขั้นสูงที่กรองเฉพาะค่าที่ไม่ซ้ำหรือลบรายการซ้ำได้โดยใช้ฟีเจอร์ Excel, ฟังก์ชัน UNIQUE (เฉพาะ Excel 365) และ VBA macro
สมมติว่า เรามีชุดข้อมูลที่มีรายการเหมือนกันหลายชุด เราต้องการลบรายการเหมือนกันออก รักษาเพียงหนึ่งรายการของแต่ละชุดให้เป็นค่าที่ไม่ซ้ำ

ในบทความนี้ เราสาธิตหลายวิธีในการใช้ advanced filter สำหรับบันทึกที่ไม่ซ้ำอย่างเดียว
ดาวน์โหลดสมุดทำงาน Excel (Download Excel Workbook)
4 วิธี ใช้ Advanced Filter สำหรับบันทึกที่ไม่ซ้ำ (Unique Records Only) ใน Excel
วิธีที่ 1: ฟีเจอร์ Advanced Filter ของ Excel กรองบันทึกที่ไม่ซ้ำ
Excel มีตัวเลือกในแท็บ Data (ข้อมูล) เป็น Advanced Filter ฟีเจอร์ Advanced Filter นี้สามารถกรองค่าที่ไม่ซ้ำได้เพียงอย่างเดียว หมายความว่าฟีเจอร์นี้เก็บหนึ่งในรายการซ้ำไว้เป็นค่าที่ไม่ซ้ำ และลบรายการอื่นๆ ออก
หลังจากตรวจสอบชุดข้อมูล เราพบ 3 ชุดของบันทึกเหมือนกัน ดังนั้น เราต้องลบรายการเหมือนกันเหล่านี้ แต่เก็บหนึ่งรายการของแต่ละชุดไว้ในชุดข้อมูลเป็นค่าที่ไม่ซ้ำ

ขั้นตอนที่ 1: เลือกช่วงทั้งหมด จากนั้น ไปที่แท็บ Data > เลือก Advanced (ขั้นสูง) (จากส่วน Sort & Filter)

ขั้นตอนที่ 2: หน้าต่าง Advanced Filter ปรากฏ ในหน้าต่าง
- ภายใต้ Action > ติ๊ก Copy to another location (คัดลอกไปตำแหน่งอื่น)
- List range (ช่วงรายการ) ถูกเลือกอัตโนมัติ (เช่น B4:F17)
- เลือก Copy to location (คัดลอกไปตำแหน่ง) (เช่น H4)
- ติ๊กตัวเลือก Unique Records Only (เฉพาะบันทึกที่ไม่ซ้ำ)
- คลิก OK

➤ การคลิก OK จะวางรายการที่ไม่ซ้ำในตำแหน่งใหม่ที่คุณระบุในตัวเลือก Copy to ของหน้าต่าง Advanced Filter

🔁 การกำหนดเกณฑ์เพื่อใช้ Advanced Filter สำหรับบันทึกที่ไม่ซ้ำอย่างเดียว
การกำหนดเกณฑ์เพื่อกรองรายการจากช่วงเป็นวิธีง่ายในการค้นหาหรือหารายการที่ต้องการ สมมติว่าเรากำหนดเกี่ยวกับ Order Date (วันที่สั่งซื้อ), Product (ผลิตภัณฑ์), และ Quantity (จำนวน) เราต้องการบันทึกของผลิตภัณฑ์ที่มียอดขาย Quantity จำนวนหนึ่ง (>50) ในวันที่กำหนด (2/3/2022)

➤ ทำซ้ำ ขั้นตอนที่ 1 ของวิธีนี้ หลังจากนั้นหน้าต่าง Advanced Filter ปรากฏ กำหนดตัวเลือกคล้าย ขั้นตอนที่ 2 ยกเว้นแทรกช่วง (เช่น G6:J7) ในกล่องโต้ตอบ Criteria range (ช่วงเกณฑ์) สุดท้าย คลิก OK

⧬ ต้องแน่ใจว่าคุณเลือก Criteria range รวมถึงหัวคอลัมน์
➤ หลังจากคลิก OK Advanced Filter นำเสนอบันทึกที่ตรงตามเกณฑ์ ตามภาพด้านล่าง

เนื่องจากเรามีเพียงหนึ่งบันทึกที่ตรงตามเกณฑ์ที่กำหนดในชุดข้อมูล Advanced Filter จึงคืนค่าเพียงหนึ่งบันทึก
อ่านเพิ่มเติม: Advanced Filter พร้อมเกณฑ์หลายอย่างใน Excel (15 ตัวอย่างที่เหมาะสม)
วิธีที่ 2: ฟังก์ชัน UNIQUE กรองบันทึกที่ไม่ซ้ำอย่างเดียว
ฟังก์ชัน UNIQUE ของ Excel กรองบันทึกที่ไม่ซ้ำอย่างเดียว อย่างไรก็ตาม ฟังก์ชันนี้ทำงานได้เฉพาะใน Excel 365 ไวยากรณ์ของฟังก์ชัน UNIQUE คือ
=UNIQUE (array, [by_col], [exactly_once])
ในสูตร
array; ช่วงหรืออาร์เรย์ที่ต้องการดึงค่าที่ไม่ซ้ำ
[by_col]; ประเภทการดึงและเปรียบเทียบ FALSE ทำงานตาม Row (แถว) และ TRUE ทำงานตาม Column (คอลัมน์) [optional]
[exactly_once]; TRUE หมายถึงค่าที่เกิดขึ้นครั้งเดียว และ FALSE หมายถึงค่าที่ไม่ซ้ำทั้งหมด (ค่าเริ่มต้น) [optional]
ขั้นตอนที่ 1: วางสูตรต่อไปนี้ในเซลล์ว่างใดๆ (เช่น H4)
=UNIQUE(B4:F17)
ฟังก์ชัน UNIQUE รับอาร์เรย์ (เช่น B4:F17) และคืนค่าที่ไม่ซ้ำทั้งหมด

ขั้นตอนที่ 2: กด ENTER แล้วในไม่ช้า ค่าที่ไม่ซ้ำทั้งหมดจะปรากฏตามภาพด้านล่าง
จากภาพหน้าจอข้างต้น คุณเห็นบันทึกที่ไม่ซ้ำทั้งหมดที่ดึงมาจากชุดข้อมูล
อ่านเพิ่มเติม: ตัวอย่าง Excel VBA ของ Advanced Filter พร้อมเกณฑ์ (6 เกณฑ์)
การอ่านที่คล้ายคลึงกัน:
- Dynamic Advanced Filter Excel (VBA & Macro)
- วิธีใช้ Advanced Filter ใน VBA (แนวทางแบบขั้นตอน)
- วิธีใช้ Advanced Filter หาก Criteria Range มีข้อความใน Excel
- VBA คัดลอกข้อมูลไปแผ่นงานอื่นด้วย Advanced Filter ใน Excel
วิธีที่ 3: ฟีเจอร์ Remove Duplicates (ลบรายการซ้ำ) เพื่อลบรายการซ้ำ
การลบรายการซ้ำก็เป็นหนึ่งในวิธีที่สะดวกในการกรองเพื่อค่าที่ไม่ซ้ำ Excel มีตัวเลือก Remove Duplicates ในแท็บ Data ฟีเจอร์ Remove Duplicates นี้เก็บบันทึกเหมือนกันหนึ่งรายการไว้ระหว่างรายการซ้ำ
ขั้นตอนที่ 1: เลือกช่วง แล้ว ไปที่แท็บ Data > เลือก Remove Duplicates (จากส่วน Data Tools)

ขั้นตอนที่ 2: หน้าต่าง Remove Duplicates ปรากฏ ในหน้าต่าง คลิกตัวเลือก Select All (เลือกทั้งหมด) แล้วคลิก OK

ขั้นตอนที่ 3: หน้าต่างแจ้งเตือนปรากฏ บอกว่า Excel ลบรายการซ้ำ 3 รายการ คลิก OK

➤ การดำเนินการของฟีเจอร์ Remove Duplicates ลบรายการซ้ำและเก็บบันทึกที่ไม่ซ้ำอย่างเดียว

อ่านเพิ่มเติม: Excel Advanced Filter: ใช้ "Does Not Contain" (2 วิธี)
วิธีที่ 4: VBA Macro กรองบันทึกที่ไม่ซ้ำ
VBA Macros มีพลังสำหรับบรรลุผลลัพธ์ตามเกณฑ์ เราสามารถใช้รหัสแมโครกรองบันทึกที่ไม่ซ้ำอย่างเดียว
เรามีชุดข้อมูลที่มีรายการซ้ำอยู่แล้ว เราจัดรูปแบบสีรายการซ้ำเพื่อระบุได้ง่าย

ขั้นตอนที่ 1: กด ALT+F11 พร้อมกันเพื่อเปิดหน้าต่าง Microsoft Visual Basic ในหน้าต่างนั้น เลือก Insert (แทรก) (จาก Toolbar) > คลิก Module (โมดูล)

ขั้นตอนที่ 2: พิมพ์แมโครต่อไปนี้ใน Module
Option Explicit
Sub Filter_Unique_Records()
Dim SourceRng As Range, PasteRng As Range
Dim lastRow As Long
Dim wrk As Worksheet
Set wrk = ThisWorkbook.Sheets("VBA")
Set PasteRng = wrk.Cells(4, 8)
If PasteRng <> vbNullString Then
lastRow = wrk.Columns(PasteRng.Column).Find("*", , , , xlByRows, xlPrevious).Row
wrk.Range(PasteRng, Cells(lastRow, PasteRng.Column + 2)).Delete xlUp
Set PasteRng = wrk.Cells(4, 8)
End If
lastRow = wrk.Columns(2).Find("*", , , , xlByRows, xlPrevious).Row
Set SourceRng = wrk.Range(Cells(4, 2), Cells(lastRow, 6))
SourceRng.AdvancedFilter Action:=xlFilterCopy, copytorange:=PasteRng, Unique:=True
End Sub

แมโครเริ่มช่วงต้นทางจาก แถว 4 และ คอลัมน์ 2 และช่วงปลายทางเริ่มจาก แถว 4 และ คอลัมน์ 8 ใช้ฟังก์ชัน VBA CELL มันยังกำหนดเงื่อนไขลบเนื้อหาจากช่วงปลายทางใช้เมธอด VBA Range.Delete ในที่สุด แมโครรัน VBA AdvancedFilter Action
ขั้นตอนที่ 3: ใช้ปุ่ม F5 รันแมโครหลังจากนั้นกลับไปที่แผ่นงาน คุณจะเห็นบันทึกซ้ำทั้งหมดถูกลบออก คล้ายกับภาพด้านล่าง

อ่านเพิ่มเติม: Advanced Filter พร้อม Criteria Range ใน Excel (18 การประยุกต์ใช้)
สรุป
ในบทความนี้ เราใช้ฟีเจอร์ Excel หลายอย่าง ฟังก์ชัน UNIQUE และโค้ด VBA macro เพื่อกรองเฉพาะค่าที่ไม่ซ้ำ วิธีที่กล่าวมาข้างต้นแต่ละวิธีมีความสะดวกของตัวเองตามประเภทข้อมูล หวังว่าคุณจะพบว่าวิธีเหล่านี้เก่งในการแก้ปัญหา คอมเมนต์ถ้ามีคำถามเพิ่มเติมหรือมีอะไรจะเพิ่ม
บทความที่เกี่ยวข้อง
- Excel Advanced Filter [หลายคอลัมน์ & เกณฑ์, ใช้สูตร & ตัวแทน]
- วิธีใช้ Advanced Filter ตัดเซลล์ว่างใน Excel (3 เทคนิคง่าย)
- วิธีใช้ Advanced Filter คัดลอกข้อมูลไปแผ่นงานอื่นใน Excel
- วิธีใช้ Advanced Filter คัดลอกไปตำแหน่งอื่นใน Excel
- Excel Advanced Filter Not Working (2 เหตุผล & วิธีแก้)