VLOOKUP Fuzzy Match ใน Excel (3 วิธีด่วน)

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

วันนี้เราจะมาเรียนรู้วิธีใช้ VLOOKUP เพื่อค้นหา Fuzzy Match ใน Excel

ในขณะที่ทำงานกับชุดข้อมูลขนาดใหญ่ เรามักจะพยายาม กรองค่าที่คล้ายกันออก ประเภทการจับคู่ประเภทหนึ่งเรียกว่า การจับคู่แบบฟัซซี่ โดยที่ค่าจะไม่เหมือนกันทุกประการ แต่ยังคงจับคู่ตามความคล้ายคลึงกัน

ดังนั้น เรามาคุยกันว่าคุณสามารถใช้ VBA VLOOKUP ฟังก์ชัน ของ Excel เพื่อค้นหา Fuzzy Match ได้อย่างไร

รู้เบื้องต้นเกี่ยวกับ Fuzzy Match

A Fuzzy Match เป็นประเภทของ การจับคู่บางส่วน

ในการจับคู่ประเภทนี้ ข้อความหนึ่งไม่ตรงกับข้อความอื่นทั้งหมด แต่ส่วนสำคัญของข้อความไม่ตรงกับข้อความอื่น

ในตัวอย่างที่ให้มา หนังสือ “ประวัติศาสตร์อินเดียในช่วงสงครามโลกครั้งที่หนึ่ง” ประกอบด้วยสามส่วนที่สำคัญ: ประวัติศาสตร์ , อินเดีย และ สงครามโลกครั้งที่ .

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

ดังนั้น การจับคู่ที่คลุมเครือคือ:

  • ประวัติศาสตร์สงครามโลกครั้งที่สอง
  • ประวัติศาสตร์กรีกโบราณ
  • สงครามโลกครั้งที่: สาเหตุและผลกระทบ
  • อารยธรรมสินธุ: ประวัติศาสตร์สมัยโบราณ <7
  • อินเดียได้รับอิสรภาพ
  • อดอล์ฟ ฮิตเลอร์: ก่อนและหลังสงครามโลกครั้งที่
  • การค้นพบอินเดีย

ดาวน์โหลดแบบฝึกหัด

VLOOKUP FuzzyMatching.xlsm

3 แนวทางสำหรับ VLOOKUP Fuzzy Match ใน Excel

เรามีชุดข้อมูลที่มี ชื่อ จาก หนังสือบางเล่มของร้านหนังสือชื่อว่า

วัตถุประสงค์ของเราในวันนี้คือการใช้ฟังก์ชัน VLOOKUP ของ Excel เพื่อสร้าง Fuzzy Matches . เรามาคุยกันถึง 3 แนวทางกัน

1. VLOOKUP Fuzzy Match โดยใช้สัญลักษณ์แทน (การจับคู่ Lookup_Value ทั้งหมด)

  • ก่อนอื่น เราจะสร้างการจับคู่แบบคลุมเครือโดยใช้อักขระตัวแทน เครื่องหมายดอกจัน (*) แต่จำไว้ว่า คุณต้องจับคู่ lookup_value ทั้งหมดในวิธีนี้ ไม่ใช่ส่วนที่แยกจากกันของ lookup_value

ตัวอย่างเช่น เราสามารถหา หนังสือที่มีข้อความ "สงครามโลกครั้งที่สอง" ด้วยวิธีนี้

เฉพาะหนังสือที่มีข้อความเต็ม "สงครามโลกครั้งที่สอง" เท่านั้นที่จะตรงกัน

สูตรนั้นง่าย ใส่สัญลักษณ์ เครื่องหมายดอกจัน (*) ที่ปลายทั้งสองด้านของข้อความ lookup_value

สูตรจะเป็น:

=VLOOKUP("*Second World War*",B5:B22,1,FALSE)

  • คุณสามารถใช้การอ้างอิงเซลล์แทนข้อความต้นฉบับได้เช่นกัน ใช้สัญลักษณ์ เครื่องหมายและ (&) เพื่อรวมเป็นข้อความเดียว แบบนี้:

=VLOOKUP("*"&D5&"*",B5:B22,1,FALSE)

หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับ VLOOKUP ใช้สัญลักษณ์แทน ไปที่ บทความนี้ .

อ่านเพิ่มเติม: วิธีดำเนินการ VLOOKUP ด้วยสัญลักษณ์แทนใน Excel (2 วิธี)

2. Fuzzy Match โดยใช้VBA

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

ตอนนี้เราจะหาสูตรโดยใช้ โค้ด VBA ที่ จะบรรลุจุดประสงค์ของเราเกือบทั้งหมด

  • ในตอนแรก ให้เปิดหน้าต่าง VBA และแทรกโค้ด VBA ต่อไปนี้ในโมดูลใหม่:

รหัส :

5026

รหัสนี้สร้างฟังก์ชันที่เรียกว่า FUZZYMATCH .

  • ตอนนี้ บันทึกตาม ขั้นตอนของวิธีที่ 3 ของบทความนี้ .

ฟังก์ชัน FUZZYMATCH นี้จะค้นหา Fuzzy Matches<ทั้งหมด 2> ของ ค่าการค้นหา โดยตรง

ไวยากรณ์ ของฟังก์ชัน FUZZYMATCH นี้คือ:

=FUZZYMATCH(lookup_value,lookup_range)

หากต้องการทราบ การจับคู่แบบคลุมเครือ ของหนังสือ “ประวัติศาสตร์อินเดียในช่วงสงครามโลกครั้งที่หนึ่ง” ป้อน lookup_value ในเซลล์ ( D5 ในตัวอย่างนี้) และป้อนสูตรนี้ในเซลล์อื่น:

=FUZZYMATCH(D5,B5:B22)

ดูสิ เราค้นพบ Fuzzy Match ทั้งหมดแล้ว es ของหนังสือ “The History of India during the World War”

  • ที่นี่ D5 คือการอ้างอิงเซลล์ของ lookup_value (“The ประวัติศาสตร์อินเดียในช่วงสงครามโลก”)
  • B5:B22 คือ lookup_range

มาหาคำตอบกัน Fuzzy Matches ของหนังสืออีกเล่มหนึ่งชื่อ “สมุดบันทึกแห่งสาเหตุที่อยู่เบื้องหลังอาชญากรรมในเมืองใหญ่” .

ป้อน lookup_value นี้ในเซลล์ ( D5 ในตัวอย่างนี้) และป้อนสูตรนี้ในเซลล์อื่น:

=FUZZYMATCH(D5,B5:B22)

💡 คำอธิบายของสูตร

  • ฟังก์ชัน FUZZYMATCH เป็นฟังก์ชันที่เราสร้างขึ้นใน VBA . ใช้สตริงชื่อ lookup_value และช่วงของเซลล์ชื่อ lookup_range และส่งคืนอาร์เรย์ของ Fuzzy Matches ทั้งหมดของสตริง
  • ดังนั้น FUZZYMATCH(D5,B5:B22) จะส่งกลับอาร์เรย์ของ Fuzzy Matches ทั้งหมดของสตริงในเซลล์ D5 จากช่วง B5:B22 .

อ่านเพิ่มเติม: วิธี VLOOKUP ข้อความบางส่วนใน Excel (ด้วยทางเลือกอื่น)

คล้ายกัน การอ่าน

  • VLOOKUP ไม่ทำงาน (8 เหตุผลและวิธีแก้ปัญหา)
  • INDEX MATCH เทียบกับฟังก์ชัน VLOOKUP (9 ตัวอย่าง)
  • ใช้ VLOOKUP ที่มีหลายเกณฑ์ใน Excel (6 วิธี + ทางเลือก)
  • Excel VLOOKUP เพื่อส่งคืนค่าหลายค่าในแนวตั้ง
  • VLOOKUP และส่งคืนรายการที่ตรงกันทั้งหมดใน Excel (7 วิธี)

3. Fuzzy Match โดยใช้ Fuzzy Lookup Add-in ของ Excel

Microsoft Excel มี Add-in ที่เรียกว่า Fuzzy Lookup คุณสามารถจับคู่สองตารางสำหรับ Fuzzy Lookup ได้

  • ในตอนแรก ให้ดาวน์โหลดและติดตั้ง Add-in จาก ลิงก์ .
  • หลังจากดาวน์โหลดและติดตั้งเรียบร้อยแล้ว คุณจะพบ Fuzzy Lookup Add-in ในแถบเครื่องมือ Excel ของคุณ

  • แล้วจัดชุดข้อมูลออกเป็นสองตารางที่คุณต้องการจับคู่

  • ที่นี่ ฉันมีตารางสองตารางที่มีรายชื่อหนังสือสองเล่มจากร้านหนังสือสองแห่งชื่อ Robert Bookshop และ Martin Bookshop .
  • ถัดไป ไปที่แท็บ Fuzzy ค้นหา > คลิก เครื่องมือ Fuzzy Lookup ใน Excel Toolbar

  • ดังนั้น คุณจะได้ตาราง Fuzzy Lookup สร้างขึ้นในแผงด้านข้างของสมุดงานของคุณ

ในตัวเลือก ตารางด้านซ้าย และ ตารางด้านขวา เลือกชื่อของตารางทั้งสอง

สำหรับตัวอย่างนี้ เลือก Robert และ Martin .

จากนั้นในส่วน Columns ให้เลือกชื่อของ ของแต่ละตาราง

ในส่วน จับคู่คอลัมน์ เลือกประเภทการจับคู่ที่คุณต้องการระหว่างสองคอลัมน์ สำหรับ Fuzzy Match เลือก ค่าเริ่มต้น

  • สุดท้าย ให้คลิกที่ ไป คุณจะได้อัตราส่วนที่ตรงกันของตารางในตารางใหม่

อ่านเพิ่มเติม: VLOOKUP เพื่อเปรียบเทียบสองรายการใน Excel (2 วิธีขึ้นไป)

บทสรุป

เมื่อใช้วิธีการเหล่านี้ คุณสามารถใช้ VLOOKUP ฟังก์ชัน ของ Excel เพื่อค้นหา Fuzzy Match แม้ว่าวิธีการเหล่านี้จะไม่ได้ผล 100% แต่ก็ยังมีประโยชน์มาก คุณมีคำถามใดๆ? อย่าลังเลที่จะถามพวกเขาในช่องแสดงความคิดเห็น อย่าลืมแบ่งปันหากคุณมีวิธีการที่ดีกว่า เชื่อมต่อกับ ExcelWIKI .

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