สารบัญ
ใน Microsoft Excel มีวิธีที่มีประโยชน์หลายวิธีในการค้นหาข้อความบางส่วนที่ตรงกัน แล้วแยกข้อมูลตามการจับคู่นั้น ในบทความนี้ คุณจะได้เรียนรู้วิธีการที่เหมาะสมทั้งหมดเพื่อค้นหาข้อความที่ตรงกันบางส่วนใน Excel ด้วยการรวมฟังก์ชันการค้นหาและสูตรต่างๆ เข้าด้วยกัน
ดาวน์โหลดสมุดงานแบบฝึกหัด
คุณสามารถดาวน์โหลดสมุดงาน Excel ที่เราใช้ในการเตรียมบทความนี้
ค้นหาการจับคู่ข้อความบางส่วน.xlsx
5 วิธีการที่เหมาะสมในการ ค้นหาการจับคู่ข้อความบางส่วนใน Excel
1. การจับคู่ข้อความบางส่วนด้วย VLOOKUP ใน Excel
ในภาพต่อไปนี้ มีตารางที่มีคะแนนในวิชาต่างๆ สำหรับนักเรียนบางคนในการสอบ จากการจับคู่บางส่วนของข้อความจาก คอลัมน์ B เราจะแยกเครื่องหมายในหัวข้อสำหรับนักเรียน
ตัวอย่างเช่น เราสามารถค้นหาข้อความ “ติ๊กถูก” ในคอลัมน์ ชื่อ จากการจับคู่บางส่วน เราจะค้นหาชื่อจริงของนักเรียนคนนั้น จากนั้นแยกเครื่องหมายทางคณิตศาสตร์ของนักเรียนที่เกี่ยวข้องออกจากตาราง
ในตัวอย่างนี้ เราจะใช้ ฟังก์ชัน VLOOKUP ที่นี่ เนื่องจากฟังก์ชันนี้ค้นหาค่าในคอลัมน์ซ้ายสุดของตาราง แล้วส่งกลับค่าในแถวเดียวกันจากคอลัมน์ที่ระบุ สูตรทั่วไปของฟังก์ชัน VLOOKUP นี้คือ:
=VLOOKUP(lookup_value, table_array, col_index_number,[range_lookup])
เนื่องจากเราจะดึงคะแนนในวิชาคณิตศาสตร์ของนักเรียนที่ชื่อมีข้อความ “ติ๊ก” ดังนั้นสูตรที่ต้องการในเอาต์พุต เซลล์ D17 จะเป็น:
=VLOOKUP(D16,B5:G14,5,FALSE)
หรือ
=VLOOKUP("*Tick*",B5:G14,5,FALSE)
หลังจากกด Enter คุณจะเห็นเครื่องหมายทางคณิตศาสตร์สำหรับ Tickner ทันที
อ่านเพิ่มเติม: วิธีใช้ VLOOKUP สำหรับการจับคู่บางส่วนใน Excel (4 วิธี)
2. ค้นหาการจับคู่ข้อความบางส่วนด้วยฟังก์ชัน INDEX-MATCH
ตอนนี้เราจะใช้ฟังก์ชัน INDEX และ MATCH ร่วมกัน ฟังก์ชัน INDEX จะส่งกลับค่าหรือการอ้างอิงของเซลล์ที่จุดตัดของแถวและคอลัมน์เฉพาะในช่วงที่กำหนด และฟังก์ชัน MATCH จะส่งกลับตำแหน่งสัมพัทธ์ของรายการในอาร์เรย์ที่ตรงกับค่าที่ระบุในลำดับที่ระบุ
เราจะพบผลลัพธ์ที่คล้ายกันกับวิธีก่อนหน้า ดังนั้น ในส่วนนี้ สูตรที่จำเป็นในเอาต์พุต เซลล์ D18 จะเป็น:
=INDEX(B5:G14,MATCH(D17,B5:B14,0),MATCH(D17,B4:G4,0))
หรือ
=INDEX(B5:G14,MATCH("*Tick*",B5:B14,0),MATCH(D17,B4:G4,0))
ตอนนี้กด Enter และสูตรจะคืนค่า 91- เครื่องหมายที่ Tickner ได้รับในวิชาคณิตศาสตร์
ในสูตรนี้ ฟังก์ชัน MATCH สองฟังก์ชันจะกำหนดหมายเลขแถวและคอลัมน์ของชื่อนักเรียนและชื่อเรื่องตามลำดับ ฟังก์ชัน INDEX จะส่งกลับค่าที่จุดตัดของแถวและหมายเลขคอลัมน์ที่กำหนดไว้จากอาร์เรย์
อ่านเพิ่มเติม: วิธีใช้ INDEX และ Match for Partial Match (2 วิธี)
3. XLOOKUP ที่มีอักขระตัวแทนเพื่อค้นหาการจับคู่ข้อความบางส่วน
ฟังก์ชัน XLOOKUP จะค้นหาช่วงหรืออาร์เรย์สำหรับการจับคู่ และส่งกลับรายการที่เกี่ยวข้องจากช่วงหรืออาร์เรย์ที่สอง สูตรทั่วไปของฟังก์ชันนี้คือ:
=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
ตอนนี้ เรา' จะใช้ฟังก์ชัน XLOOKUP นี้โดยตรงเพื่อแยกเครื่องหมายในวิชาคณิตศาสตร์ของนักเรียนที่ชื่อมีข้อความ “ติ๊ก” อยู่ข้างใน
ในเอาต์พุต เซลล์ D18 สูตรที่ต้องการจะเป็น:
=XLOOKUP("*"&D16&"*",B5:B14,F5:F14,,2)
หลังจากกด Enter คุณจะแสดงผลคล้ายกับที่พบ ในสองตัวอย่างก่อนหน้านี้
ในฟังก์ชันนี้ เราใช้ 2 เป็นอาร์กิวเมนต์ [match_mode] ที่แสดงถึงการจับคู่อักขระตัวแทน หากคุณไม่ได้ใช้อาร์กิวเมนต์นี้ ฟังก์ชันจะส่งกลับข้อผิดพลาด #N/A ตามค่าเริ่มต้น ฟังก์ชันจะค้นหาการจับคู่แบบตรงทั้งหมดแทนการจับคู่อักขระตัวแทน
4. การรวมฟังก์ชัน XLOOKUP, ISNUMBER และ SEARCH เพื่อค้นหาการจับคู่ข้อความบางส่วน
หากคุณเลือกที่จะหลีกเลี่ยงการใช้อักขระตัวแทนในฟังก์ชันการค้นหา คุณต้องใช้สูตรผสมของ XLOOKUP , ISNUMBER และ SEARCH ฟังก์ชัน
ฟังก์ชัน ISNUMBER จะตรวจสอบว่าค่าเซลล์เป็นค่าตัวเลขหรือไม่ ฟังก์ชัน SEARCH จะส่งคืนจำนวนอักขระที่พบอักขระเฉพาะหรือสตริงข้อความเป็นครั้งแรก โดยอ่านจากซ้ายไปขวา สูตรทั่วไปของฟังก์ชันทั้งสองนี้มีดังต่อไปนี้:
=ISNUMBER(value)
และ
=SEARCH(find_text, within_text , [search_num])
ดังนั้น สูตรที่จำเป็นในเอาต์พุต เซลล์ D18 จะเป็น:
=XLOOKUP(TRUE,ISNUMBER(SEARCH(D16,B5:B14)),F5:F14)
หลังจากกด Enter ค่าผลลัพธ์จะแสดงทันที
🔎 สูตรทำอย่างไร ทำงานหรือไม่
- ฟังก์ชัน SEARCH ค้นหาข้อความ 'ติ๊ก' ในช่วงของเซลล์ B5:B14 และส่งคืนอาร์เรย์ของ:
{#VALUE !;#VALUE !;1;#VALUE !;#VALUE !;#VALUE !;#VALUE !;#VALUE !;# VALUE!;#VALUE!}
- จากนั้นฟังก์ชัน ISNUMBER จะค้นหาค่าตัวเลขในอาร์เรย์นั้นและส่งกลับค่าบูลีนอาร์เรย์อื่น: <19
- ฟังก์ชัน XLOOKUP จากนั้น ค้นหาค่าบูลีนที่ระบุ - จริง ในอาร์เรย์ที่พบในขั้นตอนก่อนหน้า และแยกหมายเลขแถวของค่านั้นในอาร์เรย์ของ B5:B1 4 .
- สุดท้าย ตามอาร์เรย์ส่งคืนของ F5:F14 ฟังก์ชัน XLOOKUP จะดึงคะแนนทางคณิตศาสตร์ของนักเรียนที่มีชื่อ ข้อความ- 'ติ๊กถูก' ข้างใน
{FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}
5. การใช้ฟังก์ชัน FILTER, ISNUMBER และ SEARCH เพื่อค้นหาการจับคู่ข้อความบางส่วน
ในวิธีสุดท้าย เราจะใช้ฟังก์ชัน FILTER, ISNUMBER และ SEARCH ร่วมกัน ฟังก์ชัน กรอง ที่นี่จะกรองช่วงของเซลล์หรืออาร์เรย์ตามเงื่อนไขที่กำหนด สูตรทั่วไปของฟังก์ชันนี้คือ:
=FILTER(array, include, [if_empty])
เนื่องจากเรากำลังจัดการกับชุดข้อมูลที่คล้ายคลึงกัน ดังนั้น สูตรที่มีฟังก์ชัน กรอง ในเอาต์พุต เซลล์ D18 จะเป็น:
=FILTER(F5:F14,ISNUMBER(SEARCH(D16,B5:B14)))
ตอนนี้กด Enter และคุณจะได้รับค่าผลลัพธ์ทันที
ในสูตรนี้ ฟังก์ชัน กรอง จะกรองช่วงของเซลล์ - F5:F14 ขึ้นอยู่กับค่าบูลีน- จริง เท่านั้น การรวมกันของฟังก์ชัน ISNUMBER และ SEARCH ส่งคืนอาร์เรย์ของค่าบูลีน - TRUE และ FALSE และกำหนดอาร์กิวเมนต์ที่สอง ( รวม) ของฟังก์ชัน กรอง
สรุปคำ
ฉันหวังว่าวิธีการทั้งหมดที่กล่าวถึงข้างต้นจะช่วยให้คุณสามารถดึงข้อมูลได้ ตามข้อความบางส่วนที่ตรงกันในสเปรดชีต Excel ของคุณ หากคุณมีคำถามหรือข้อเสนอแนะ โปรดแจ้งให้เราทราบในส่วนความคิดเห็น หรือคุณสามารถตรวจสอบบทความอื่น ๆ ของเราเกี่ยวกับฟังก์ชันของ Excel ได้ในเว็บไซต์นี้