วิธีค้นหาค่าที่ไม่ซ้ำจากหลายคอลัมน์ใน Excel

  • แบ่งปันสิ่งนี้
Hugh West

ในบทความนี้ ฉันจะแสดงวิธีที่คุณสามารถค้นหาค่าที่ไม่ซ้ำกันจากหลายคอลัมน์ใน Microsoft Excel

ดาวน์โหลดสมุดงานแบบฝึกหัด

ดาวน์โหลดไฟล์ Excel ต่อไปนี้ เพื่อให้คุณฝึกฝนในขณะอ่านบทความนี้ได้

ค้นหาค่าที่ไม่ซ้ำหลายคอลัมน์.xlsm

5 วิธีในการค้นหาค่าที่ไม่ซ้ำจากหลายคอลัมน์ ใน Excel

ให้เราดูที่ชุดข้อมูลนี้ เรามีบันทึกของนักเรียนของโรงเรียนชื่อ Glory Kindergarten

เรามีรหัสนักเรียน ชื่อ และนามสกุลของนักเรียนในคอลัมน์ B , C, และ D ตามลำดับ

ตอนนี้เราต้องการเรียงลำดับชื่อเฉพาะของนักเรียน

วิธีที่ 1: แยก ค่าที่ไม่ซ้ำจากหลายคอลัมน์ด้วยสูตรอาร์เรย์

การใช้ฟังก์ชัน UNIQUE

ข้อควรระวัง: ฟังก์ชัน UNIQUE มีเฉพาะใน Office 365

ไวยากรณ์ของฟังก์ชัน UNIQUE:

=UNIQUE(อาร์เรย์,[by_col],[exactly_once])

  • รับอาร์กิวเมนต์ 3 รายการ ช่วงเซลล์หนึ่งเรียกว่า อาร์เรย์ และค่าบูลีน 2 ค่าเรียกว่า by_col และ exactly_once
  • ส่งกลับค่าเฉพาะ จาก อาร์เรย์ .
  • หากตั้งค่า by_col เป็น TRUE ระบบจะค้นหาค่าที่ไม่ซ้ำกันตามคอลัมน์ของอาร์กิวเมนต์นี้หรือไม่ก็ได้ . ค่าเริ่มต้นคือ TRUE .
  • ถ้า exactly_once ถูกตั้งค่าเป็น TRUE จะส่งกลับค่าซึ่งปรากฏเพียงครั้งเดียวใน อาร์เรย์ อาร์กิวเมนต์นี้เป็นทางเลือก ค่าเริ่มต้นคือ FALSE .

ตอนนี้เราต้องการแยกค่าที่ไม่ซ้ำออกจากทั้ง ชื่อแรก (คอลัมน์ C ) และ นามสกุล (คอลัมน์ D )

  • ก่อนอื่น เลือกเซลล์และใส่สูตรนี้ที่นั่น ฉันเลือกเซลล์ E5 และป้อนเซลล์ที่นั่น

=UNIQUE(C5:D16,FALSE,TRUE)

ดูว่าเรามีชื่อที่ไม่ซ้ำในสองคอลัมน์ที่แตกต่างกัน

  • ที่นี่ เราได้แทรก by_col เป็น FALSE ดังนั้นจึงไม่ได้ค้นหาตาม คอลัมน์
  • ที่นี่เราได้แทรก exactly_once เป็น TRUE ดังนั้นจึงส่งคืนค่าที่ปรากฏเพียงครั้งเดียว

แน่นอน ถ้าคุณต้องการ คุณสามารถเปลี่ยนค่าบูลีนที่เรียกว่า by_col และ exactly_once และดูว่าเกิดอะไรขึ้น

อ่านเพิ่มเติม: Excel VBA เพื่อรับค่าที่ไม่ซ้ำจากคอลัมน์ (4 ตัวอย่าง)

ii. การรวมฟังก์ชัน CONCATENATE และ UNIQUE

ก่อนหน้านี้ เราได้ชื่อในเซลล์เดียว และนามสกุลในเซลล์ที่อยู่ติดกัน แต่ถ้าใครถามชื่อเต็มคือเซลล์หนึ่ง เช่น Jack Morris แล้ว? ใช้สูตรใดก็ได้เหล่านี้ ซึ่งสร้างจากฟังก์ชัน UNIQUE และ CONCATENATE

สูตรแรก:

=UNIQUE(CONCATENATE(C5:C16," ",D5:D16),FALSE,TRUE)

สูตรทางเลือก:

หรือคุณสามารถใช้ -

=UNIQUE(C5:C16&" "&D5:D16,FALSE,TRUE)

ดูสิ เราได้แยกชื่อเต็มที่ไม่ซ้ำกันในคอลัมน์เดียวคั่นด้วยช่องว่าง ( )

อ่านเพิ่มเติม: ค้นหาค่าที่ไม่ซ้ำในคอลัมน์ใน Excel (6 วิธี)

iii. การใช้ฟังก์ชัน UNIQUE, CONCATENATE และ FILTER เพื่อแยกค่าที่ไม่ซ้ำตามเกณฑ์

ลองสมมติสักครู่ มีใครต้องการแยกชื่อเฉพาะของนักเรียนที่มีรหัสมากกว่า 150 ทำอย่างไร

เราจะดำเนินการดังกล่าวโดยใช้ฟังก์ชัน UNIQUE และ FILTER

ข้อควรระวัง: ฟังก์ชัน FILTER มีเฉพาะใน Office 365 เท่านั้น

ไวยากรณ์ของฟังก์ชัน FILTER:

=FILTER(array,include,[if_empty])

  • รับอาร์กิวเมนต์สามรายการ ช่วงของเซลล์หนึ่งเรียกว่า อาร์เรย์ เงื่อนไขบูลีนหนึ่งรายการเรียกว่า รวม และหนึ่งค่าเรียกว่า
  • ส่งกลับค่าจาก อาร์เรย์ ซึ่งตรงกับ เงื่อนไขที่ระบุโดย
  • หากค่าใดๆ ของ อาร์เรย์ ไม่ตรงตามเงื่อนไขที่ระบุโดย include ระบบจะส่งกลับค่า if_empty สำหรับมัน. การตั้งค่า if_empty เป็นทางเลือก เป็น "ไม่มีผลลัพธ์" ตามค่าเริ่มต้น

ตอนนี้เราต้องการแยกชื่อเฉพาะของนักเรียนที่มี ID มากกว่า 150

  • ดังนั้น สูตรของเราจะ be

=UNIQUE(FILTER(C5:D16,B5:B16>150,"no result"),FALSE,TRUE)

ดูว่าเราได้แยกชื่อและนามสกุลของชื่อเฉพาะ ชื่อ

  • และถ้าคุณต้องการแยกชื่อเต็มที่ไม่ซ้ำกันในเซลล์เดียว ให้ใช้สิ่งนี้สูตร-

=UNIQUE(FILTER(CONCATENATE(C5:C16," ",D5:D16),B5:B16>150,"no result"),FALSE,TRUE)

อ่านเพิ่มเติม: วิธีแยกค่าที่ไม่ซ้ำตามเกณฑ์ใน Excel

วิธีที่ 2: เน้นค่าที่ซ้ำกันโดยใช้การจัดรูปแบบตามเงื่อนไข

ให้เราดูชุดข้อมูลใหม่นี้ เรามีสามคอลัมน์ แต่ทั้งหมดมีข้อมูลประเภทเดียวกัน

เรามีชื่อเล่นของนักเรียนบางคนในโรงเรียนอนุบาลกลอรี่ ตอนนี้เราต้องการค้นหาชื่อเฉพาะของนักเรียนเหล่านี้

เราจะทำได้อย่างไร

เราสามารถเน้นค่าที่ซ้ำกันโดยใช้การจัดรูปแบบตามเงื่อนไขเพื่อความสะดวก

📌 ขั้นตอน:

  • ก่อนอื่น เลือกช่วงของเซลล์
  • จากนั้นไปที่ หน้าแรก > การจัดรูปแบบตามเงื่อนไข > เน้นกฎของเซลล์ > ค่าที่ซ้ำกัน

  • คุณจะได้รับกล่องเล็กๆ ชื่อ ค่าที่ซ้ำกัน
  • เลือก สีใดก็ได้จากที่นั่นเพื่อเน้นค่าที่ซ้ำกัน ฉันกำลังเลือกสีเขียว

วิธีที่ 3: แยกค่าที่ไม่ซ้ำจากคอลัมน์ Excel โดยใช้สูตรที่ไม่มีอาร์เรย์

หากต้องการใช้สูตรที่ไม่ใช่อาร์เรย์ คุณต้องรวมฟังก์ชัน IFERROR , LOOKUP, และ COUNTIF หากต้องการใช้สูตร ให้ทำตามขั้นตอนต่อไปนี้

📌 ขั้นตอน:

  • เลือกเซลล์ใดก็ได้
  • จากนั้นใส่สูตรต่อไปนี้-

=IFERROR(IFERROR(LOOKUP(2, 1/(COUNTIF($F$4:F4,$B$5:$B$11)=0), $B$5:$B$11), LOOKUP(2, 1/(COUNTIF($F$4:F4, $C$5:$C$9)=0), $C$5:$C$9)),LOOKUP(2, 1/(COUNTIF($F$4:F4, $D$5:$D$12)=0), $D$5:$D$12))

  • ที่นี่ฉันแทรกใน เซลล์ F5 .
  • จากนั้นลากที่จับเติมแล้วคุณจะพบชื่อเฉพาะ

หมายเหตุ:

ในที่นี้ แทนคอลัมน์ B C, และ D คุณสามารถใช้รายการที่คุณต้องการได้

วิธีที่ 4: แยกรายการความแตกต่างที่ไม่ซ้ำจากสองคอลัมน์ขึ้นไปโดยใช้ Pivot Table

คุณยังสามารถสร้างรายการเฉพาะจากสองคอลัมน์ขึ้นไปโดยใช้เครื่องมือตารางเดือย ทำตามขั้นตอนต่อไปนี้

📌 ขั้นตอน:

  • กด Alt + D .
  • จากนั้น กด P ทันที คุณจะได้รับ ตัวช่วยสร้าง PivotTable และ PivotChart เปิดอยู่
  • เลือก ช่วงการรวมหลายรายการ และ ตาราง Pivot ปุ่ม

  • จากนั้นคลิก ถัดไป คุณจะย้ายไปที่ ขั้นตอนที่ 2a จาก 3 .
  • เลือก ปุ่มสร้างฟิลด์หน้าเดียวให้ฉัน

  • จากนั้นคลิก ถัดไป คุณจะไปที่ ขั้นตอนที่ 2b .
  • ในช่อง ช่วง เลือกช่วงของเซลล์ของคุณโดยมีคอลัมน์ว่างทางด้านซ้าย
  • ที่นี่ฉันได้เลือกเซลล์ B5 ถึง D12 .
  • จากนั้นคลิก เพิ่ม เซลล์ที่คุณเลือกจะถูกเพิ่มลงในช่อง ทุกช่วง 15>

  • จากนั้นคลิก ถัดไป คุณจะย้ายไปที่ ขั้นตอน 3 .
  • ในกล่อง แผ่นงานที่มีอยู่ เขียนเซลล์ที่คุณต้องการให้ ตาราง Pivot . ฉันเขียน $F$4.

  • จากนั้นคลิก เสร็จสิ้น คุณจะได้รับ Pivot Table ที่สร้างขึ้น
  • ในช่อง เลือกฟิลด์ที่จะเพิ่มรายงาน ส่วน ยกเลิกการทำเครื่องหมาย แถว , คอลัมน์ , ค่า , หน้า 1 .

  • จากนั้นทำเครื่องหมายที่ ค่า คุณจะได้รับชื่อเฉพาะใน Pivot Table

วิธีที่ 5: ใช้โค้ด VBA เพื่อค้นหาค่าที่ไม่ซ้ำ

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

📌 ขั้นตอน:

  • กด Alt + F11 บนสมุดงานของคุณเพื่อเปิด VBA หน้าต่าง
  • จากนั้นไปที่แท็บ แทรก ในแถบเครื่องมือ VBA คลิกที่มัน
  • จากสี่ตัวเลือก เลือก โมดูล

คุณจะได้รับ ใหม่ โมดูล หน้าต่าง

  • เขียนโค้ดต่อไปนี้ที่นั่น
2148

ไซต์นี้ ไซต์ ช่วยเรา ทำความเข้าใจและพัฒนาโค้ด

  • บันทึกเป็น Excel Macros Enabled Workbook
  • จากนั้นกลับมาที่เวิร์กชีตเดิมของคุณ กด Alt + F8 .
  • คุณจะเปิดกล่อง มาโคร ขึ้นมา
  • เลือกชื่อของ มาโคร และ จากนั้นคลิกที่ เรียกใช้ .
  • ชื่อของ มาโคร นี้คือ Uniquedata .
  • ป้อนช่วงของข้อมูลของคุณ ในช่อง ช่วง

  • คลิกที่ ตกลง คุณจะได้รับช่องป้อนข้อมูลอื่น
  • ป้อนเซลล์แรกที่คุณต้องการชื่อเฉพาะ ฉันป้อนเซลล์ F5 .

  • จากนั้นคลิก ตกลง คุณจะได้รับชื่อเฉพาะจากข้อมูลของคุณset.

อ่านเพิ่มเติม: วิธีรับค่าที่ไม่ซ้ำจากช่วงใน Excel (8 วิธี) <1

บทสรุป

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

Hugh West เป็นผู้ฝึกอบรมและนักวิเคราะห์ Excel ที่มีประสบการณ์สูงและมีประสบการณ์มากกว่า 10 ปีในอุตสาหกรรมนี้ เขาสำเร็จการศึกษาระดับปริญญาตรีสาขาการบัญชีและการเงิน และปริญญาโทสาขาบริหารธุรกิจ Hugh มีความหลงใหลในการสอนและได้พัฒนาแนวทางการสอนที่เป็นเอกลักษณ์ซึ่งง่ายต่อการติดตามและเข้าใจ ความรู้ความเชี่ยวชาญของเขาเกี่ยวกับ Excel ช่วยให้นักเรียนและผู้เชี่ยวชาญหลายพันคนทั่วโลกพัฒนาทักษะและความเป็นเลิศในอาชีพการงาน ฮิวจ์แบ่งปันความรู้ของเขากับคนทั้งโลกผ่านบล็อก โดยเสนอบทช่วยสอน Excel ฟรีและการฝึกอบรมออนไลน์เพื่อช่วยให้บุคคลและธุรกิจบรรลุศักยภาพสูงสุดของตนเอง