สารบัญ
หากเซลล์มีข้อความ เราสามารถใช้ INDEX & ฟังก์ชัน MATCH เพื่อทำการค้นหาขั้นสูงอย่างชาญฉลาด เป็นสูตรที่นิยมใช้ใน Excel ในบทความนี้ เราจะมาเรียนรู้ว่าคำสั่งผสมสองฟังก์ชันนี้ทำงานอย่างไรพร้อมคำอธิบายและตัวอย่างที่สวยงาม
สมุดแบบฝึกหัด
ดาวน์โหลดสมุดงานและแบบฝึกหัดต่อไปนี้
เซลล์ประกอบด้วย Text.xlsx
ข้อมูลเบื้องต้นเกี่ยวกับฟังก์ชัน INDEX ของ Excel
Microsoft Excel ฟังก์ชัน INDEX ส่งคืนเซลล์ ค่าของอาร์เรย์หรือช่วงที่กำหนด
-
ไวยากรณ์:
=INDEX (อาร์เรย์, row_num, [col_num], [ area_num])
-
อาร์กิวเมนต์:
อาร์เรย์: ช่วงเซลล์หรือ อาร์เรย์คงที่
row_num: หมายเลขแถวจากช่วงหรืออาร์เรย์ที่ต้องการ
[col_num]: หมายเลขคอลัมน์จากช่วงหรืออาร์เรย์ที่ต้องการ
[area_num]: หมายเลขอ้างอิงที่เลือกของช่วงทั้งหมดที่ เป็นทางเลือก
ข้อมูลเบื้องต้นเกี่ยวกับฟังก์ชัน MATCH ของ Excel
Microsoft Excel ฟังก์ชัน MATCH ใช้เพื่อค้นหาตำแหน่งของการค้นหา ค่าในอาร์เรย์หรือ a แนว. ส่งคืนค่าตัวเลข
-
ไวยากรณ์:
=MATCH(lookup_value, lookup_array, [match_type])
-
อาร์กิวเมนต์:
lookup_value: ค่าการค้นหาในส่งกลับค่าในเซลล์ C12 .
ขั้นตอน:
- เลือก เซลล์ C12 .
- พิมพ์สูตรถัดไป:
=INDEX($C$5:$C$9,MATCH(TRUE,EXACT(B12,B5:B9),0),1)
- กด Enter เพื่อดูผลลัพธ์
➥ การแจกแจงสูตร
➤ EXACT(B12,B5:B9)
ซึ่งจะค้นหาค่าที่ตรงกันทุกประการ มันจะคืนค่า TRUE สำหรับการจับคู่แบบตรงทั้งหมด และ FALSE สำหรับการจับคู่ที่ไม่ตรงกัน
➤ MATCH(TRUE,EXACT(B12,B5:B9),0)
จะพบตำแหน่งของ TRUE จากขั้นตอนที่แล้ว
➤ INDEX($C$5:$C$9,MATCH(TRUE,EXACT(B12, B5:B9),0),1)
การดำเนินการนี้จะคืนค่า CGPA โดยใช้ค่าตำแหน่งจากขั้นตอนก่อนหน้า
บทสรุป
หากเซลล์มีข้อความ เราสามารถรวมฟังก์ชัน Excel INDEX & MATCH เข้าด้วยกันได้อย่างง่ายดายเพื่อค้นหาค่า มีสมุดแบบฝึกหัดเพิ่ม ไปข้างหน้าและลองดูสิ อย่าลังเลที่จะสอบถามหรือแนะนำวิธีการใหม่ๆ
ค้นหาอาร์เรย์หรือช่วงlookup_array: อาร์เรย์ค้นหาหรือช่วงของเซลล์ที่เราต้องการค้นหาค่า
[match_type]: สิ่งนี้ระบุประเภทการจับคู่สำหรับฟังก์ชันที่จะดำเนินการ มีสามประเภท:
ค่าที่ตรงกันทั้งหมด = 0
ค่าที่มากที่สุดซึ่งเท่ากับหรือน้อยกว่าค่าที่ค้นหา =
ค่าที่น้อยที่สุดซึ่งคือ เท่ากับหรือมากกว่าค่าการค้นหา = -1
9 วิธีที่รวดเร็วในการรวม Excel INDEX & ฟังก์ชัน MATCH ถ้าเซลล์มีข้อความ
1. การใช้ฟังก์ชัน INDEX MATCH สำหรับการค้นหาอย่างง่าย
เราสามารถใช้ ฟังก์ชัน INDEX MATCH สำหรับคอลัมน์หรือแถวอย่างง่าย ค้นหาในแผ่นงาน ฟังก์ชัน VLOOKUP ใช้สำหรับการค้นหาในแนวตั้งเท่านั้น ดังนั้นคำสั่งผสมนี้จึงใช้งานได้ดีที่นี่
1.1 สำหรับการค้นหาในแนวตั้ง
สมมติว่าเรามีชุดข้อมูลชื่อนักเรียนที่มีเครื่องหมายทางคณิตศาสตร์อยู่ในแนวตั้ง เราจะค้นหาเครื่องหมายทางคณิตศาสตร์ของ Rob ในช่วง B4:C9 และส่งคืนค่าในเซลล์ E5 .
ขั้นตอน:
- เลือก เซลล์ E5 ก่อน
- พิมพ์สูตรถัดไป:
=INDEX($B$5:$C$9,MATCH("Rob",$B$5:$B$9,0),2)
- กด Enter เพื่อดูผลลัพธ์
➥ การแบ่งสูตร
➤ MATCH(“Rob”,$B$5:$B$9,0)
การดำเนินการนี้จะค้นหาข้อมูลที่ตรงกันทั้งหมดในช่วง B5:B9 .
➤ INDEX($B$5:$C$9,MATCH(“Rob”,$B$5:$B$9,0),2)
การดำเนินการนี้จะคืนค่าจากช่วง B5 :C9 .
1.2 สำหรับการค้นหาแนวนอน
ที่นี่เรามีชุดข้อมูลเดียวกันในตำแหน่งแนวนอน เราจะมองหาเครื่องหมายทางคณิตศาสตร์ของ Rob ในช่วง B4:G5 และส่งคืนค่าในเซลล์ B8 .
ขั้นตอน:
- ก่อนอื่นให้เลือก เซลล์ B8 .
- ตอนนี้พิมพ์สูตร:
=INDEX($C$4:$G$5,2,MATCH("Rob",$C$4:$G$4,0))
- สุดท้าย กด Enter เพื่อดูผลลัพธ์
➥ การแบ่งสูตร
➤ MATCH(“Rob”,$C$4:$G$4,0)
สิ่งนี้จะค้นหาการจับคู่แบบตรงทั้งหมดในช่วง C4:G4 .
➤ INDEX($C$4:$G$5, 2,MATCH(“Rob”,$C$4:$G$4,0))
การดำเนินการนี้จะคืนค่าจากช่วง C4:G5 .
2. แทรกฟังก์ชัน INDEX MATCH เพื่อค้นหาทางซ้าย
หากต้องการแยกค่าของข้อมูลจากคอลัมน์ทางซ้าย เราสามารถใช้ ฟังก์ชัน INDEX MATCH ร่วมกันได้ สมมติว่าเรามีชุดข้อมูล ( B4:E9 ) ของชื่อนักเรียนที่มีคะแนนภาษาอังกฤษ คณิตศาสตร์ ฟิสิกส์ เราจะค้นหาเครื่องหมายทางคณิตศาสตร์ของ Rob และส่งคืนค่าในเซลล์ G5 .
STEPS:
- เลือก เซลล์ G5 .
- จากนั้นจดสูตร:
=INDEX($B$5:$E$9,MATCH("Rob",E5:E9,0),2)
- กด Enter เพื่อดูผลลัพธ์
➥ รายละเอียดสูตร<2
➤ MATCH(“Rob”,E5:E9,0)
สิ่งนี้จะค้นหาสำหรับการจับคู่แบบตรงทั้งหมดในช่วง E5:E9 .
➤ INDEX($B$5:$E$9,MATCH(“Rob”,E5: E9,0),2)
การดำเนินการนี้จะส่งคืนค่าจากช่วง B5:E9 .
3. การค้นหาแบบสองทางด้วยฟังก์ชัน INDEX MATCH ถ้า เซลล์มีข้อความ
Excel ฟังก์ชัน INDEX MATCH สามารถจัดการการค้นหาแบบสองทางได้อย่างสวยงาม เช่น การแยกค่าของข้อมูลการค้นหาจากหลายคอลัมน์ ที่นี่ เรามีชุดข้อมูล ( B4:E9 ) ของชื่อนักเรียนต่างๆ ที่มีเครื่องหมายวิชาต่างกัน เราจะแยกเครื่องหมายหัวเรื่องทั้งหมดของ Rob ในเซลล์ C12:E12 .
STEPS:
- ในตอนเริ่มต้น เลือก เซลล์ C12 .
- ตอนนี้พิมพ์สูตร:
=INDEX($C$5:$E$9,MATCH($B$12,$B$5:$B$9,0),MATCH(C$11,$C$4:$E$4,0))
- กด Enter ในตอนท้าย ใช้ Fill Handle ทางด้านขวาเพื่อเติมเซลล์อัตโนมัติ
➥ การแยกสูตร
<0 ➤ MATCH($B$12,$B$5:$B$9,0)สิ่งนี้จะค้นหาการจับคู่ที่ตรงกันทุกประการของ Rob ในช่วง B5:B9 .
➤ MATCH(C$11,$C$4:$E$4,0)
สิ่งนี้จะค้นหา สำหรับวิชาที่ตรงกันทุกประการ (ภาษาอังกฤษ/คณิตศาสตร์/ฟิสิกส์) ในช่วง C4:E4 .
➤ INDEX($C$5:$E $9,MATCH($B$12,$B$5:$B$9,0),MATCH(C$11,$C$4:$E$4,0))
การดำเนินการนี้จะคืนค่าจาก ช่วง C5:E9 .
อ่านเพิ่มเติม: IF กับ INDEX-MATCH ใน Excel (3 แนวทางที่เหมาะสม)
4. การใช้ฟังก์ชัน INDEX MATCH เพื่อค้นหาค่าจากฟังก์ชัน VLOOKUP (9 ตัวอย่าง)
5. การใช้ INDEX, MATCH & ฟังก์ชัน SUM เพื่อรับค่าตามข้อความในเซลล์
สมมติว่าเราต้องการทราบคะแนนวิชาทั้งหมดของนักเรียน 'Rob' เราสามารถใช้ ฟังก์ชัน SUM ร่วมกับ ฟังก์ชัน INDEX MATCH เพื่อรับค่าในเซลล์ C12
ขั้นตอน:
- เลือก เซลล์ C12 .
- ตอนนี้จดสูตร:
=SUM(INDEX($C$5:$E$9,MATCH($B$12,$B$5:$B$9,0),0))
- จากนั้นกด Enter เพื่อดูผลลัพธ์
<35
➥ การแบ่งสูตร
➤ MATCH($B$12,$B$5:$B$9,0)<2
การดำเนินการนี้จะค้นหาเซลล์ที่ตรงกันทั้งหมด B12 ในช่วง B5:B9 .
➤ INDEX($C$5:$E$9,MATCH($B$12,$B$5:$B$9,0),0)
ค่านี้จะคืนค่าจากช่วง C5:E9 . ภายในฟังก์ชัน INDEX เราจะป้อน ' 0 ' เป็นหมายเลขคอลัมน์ ซึ่งจะส่งคืนค่าทั้งหมดในแถว
➤ SUM(INDEX($C$5:$E$9,MATCH($B$12,$B$5:$B $9,0),0))
การดำเนินการนี้จะรวมค่าที่ส่งคืนทั้งหมดจากขั้นตอนก่อนหน้า
อ่านเพิ่มเติม: รวมด้วย ฟังก์ชัน INDEX-MATCH ภายใต้หลายเกณฑ์ใน Excel
6. แทรกฟังก์ชัน INDEX MATCH พร้อมเครื่องหมายดอกจันสำหรับการจับคู่บางส่วนกับข้อความของเซลล์
เครื่องหมายดอกจัน คือ Excel อักขระตัวแทน ที่แสดงถึงอักขระจำนวนเท่าใดก็ได้ในสตริงข้อความ เราใช้สิ่งนี้เพื่อค้นหาค่าด้วย ฟังก์ชัน INDEX MATCH หากมี การจับคู่บางส่วน ในชุดข้อมูลด้านล่าง ( B4:C9 ) เรามีชื่อเต็มของนักเรียนทั้งหมดพร้อมเครื่องหมายทางคณิตศาสตร์ ชุดข้อมูลที่มีชื่อบางส่วนของนักเรียนด้วย เราจะหาเครื่องหมายทางคณิตศาสตร์และป้อนในช่วง F5:F9 .
STEPS:
- ขั้นแรก เลือก เซลล์ F5 .
- พิมพ์สูตร:
=INDEX($C$5:$C$9,MATCH(E5&"*",$B$5:$B$9,0),1)
- สุดท้าย กด Enter และใช้ Fill Handle เพื่อเติมเซลล์อัตโนมัติ
<3
➥ รายละเอียดสูตร
➤ MATCH(E5&”*”,$B$5:$B$9,0)
เป็นค่าการค้นหา เราจะใช้ E5&”*” เป็น เครื่องหมายดอกจัน ส่งกลับด้วยอักขระที่ขึ้นต้นด้วยชื่อ 'Bob' และตัวเลขใดๆ ของ อักขระที่อยู่ถัดจากช่วงสตริงข้อความ B5:B9 .
➤ INDEX($C$5:$C$9,MATCH(E5&”* ”,$B$5:$B$9,0),1)
การดำเนินการนี้จะคืนค่าจากช่วง C5:C9 .
➥ หมายเหตุ: สูตรนี้ใช้ได้ผลหากมีการจับคู่เพียงครั้งเดียว ในกรณีที่มีการจับคู่หลายรายการ ระบบจะแสดงเฉพาะการจับคู่ครั้งแรกเท่านั้น
อ่านเพิ่มเติม: INDEX MATCH Multiple Criteria with Wildcard in Excel (คู่มือฉบับสมบูรณ์)
7. ฟังก์ชันการจับคู่ดัชนีของ Excel เพื่อหาคู่ที่ใกล้เคียงที่สุด
สมมติว่าเรามีชุดข้อมูล ( B4:C9 ) ของ CGPA ของนักเรียน เราจะไปหานักเรียนที่มี CGPA ที่ใกล้เคียงที่สุดกับ CGPA ที่จำเป็นในเซลล์ C12 ที่นี่เราจะใช้ INDEX & จับคู่ฟังก์ชัน กับ นาที & ฟังก์ชัน ABS .
ขั้นตอน:
- เลือก เซลล์ C12 .
- ตอนนี้ใส่สูตร:
=INDEX($B$5:$B$9,MATCH(MIN(ABS(B12-C5:C9)),ABS(B12-$C$5:$C$9),0))
- กดถัดไป Enter เพื่อดูผลลัพธ์
➥ รายละเอียดของสูตร
➤ MATCH(MIN(ABS(B12-C5:C9)),ABS(B12-$C$5:$C$9),0)
การดำเนินการนี้จะค้นหาเซลล์ที่ตรงกันทุกประการ B12 อยู่ในช่วง B5:B9 .
➤ MIN(ABS(B12-C5:C9)
สิ่งนี้จะให้ความแตกต่างขั้นต่ำระหว่าง CGPA ที่จำเป็นกับ CGPA อื่นๆ ทั้งหมด เพื่อให้แน่ใจว่าค่าที่ใกล้เคียงที่สุด (มากหรือน้อย) เราจะใช้ ฟังก์ชัน ABS ที่นี่ ภายใน ฟังก์ชัน MATCH ค่าต่ำสุดจะเป็นค่าการค้นหา
➤ ABS(B12-$C$5:$C$9)
นี่จะเป็นอาร์เรย์การค้นหาภายใน ฟังก์ชัน MATCH .
➤ MATCH(MIN(ABS(B12-C5:C9)),ABS (B12-$C$5:$C$9),0)
ตอนนี้ ฟังก์ชัน MATCH จะค้นหาหมายเลขตำแหน่งของชื่อนักเรียนจากอาร์เรย์ที่ใกล้เคียงที่สุด สกสค.
➤ INDEX($B$5:$B$9,MATCH(MIN(ABS(B12-C5:C9)),ABS(B12-$C$5:$C$9),0))
นี่ จะส่งกลับชื่อของนักเรียน
อ่านเพิ่มเติม: INDEX-MATCH สูตรหาค่าต่ำสุดใน Excel (4 วิธีที่เหมาะสม)
8. การค้นหาการจับคู่โดยประมาณกับ INDEX & ฟังก์ชันจับคู่
ที่นี่เรามีชุดข้อมูลพร้อมคะแนนของนักเรียนทั้งหมด นอกจากนี้ยังมีตารางการให้เกรดข้างตารางหลัก เราจะค้นหาผลการเรียนของนักเรียนแต่ละคนในช่วง D5:D9 ตามเกณฑ์ที่ถูกต้อง ( F5:G10 )
ขั้นตอน:
- ก่อนอื่น เลือก เซลล์ D5 .
- พิมพ์สูตรถัดไป:
=INDEX($G$6:$G$10,MATCH(C5,$F$6:$F$10,1),1)
- สุดท้าย กด Enter และใช้ Fill Handle เพื่อดูผลรวม ผลลัพธ์
➥ การแบ่งสูตร
➤ MATCH(C5,$ F$6:$F$10,1)
การดำเนินการนี้จะค้นหาเซลล์ที่ตรงกันทั้งหมด C5 ในช่วง F6:F10 ซึ่งหมายความว่าจะผ่านช่วงเครื่องหมายและส่งกลับค่าซึ่งจะน้อยกว่าหรือเท่ากับค่าการค้นหา
➤ INDEX($G$6:$G$10 ,MATCH(C5,$F$6:$F$10,1),1)
การดำเนินการนี้จะส่งคืนเกรดโดยใช้ค่าตำแหน่งจากขั้นตอนก่อนหน้า
9. กรณี การค้นหาที่ละเอียดอ่อนด้วย INDEX & ฟังก์ชัน MATCH ถ้าเซลล์มีข้อความ
สำหรับการค้นหาที่คำนึงถึงตัวพิมพ์เล็กและใหญ่ การค้นหาแบบปกติจะไม่ทำงาน ในกรณีนี้ Excel INDEX & MATCH ฟังก์ชัน มีบทบาทสำคัญ สมมติว่าเรามีชุดข้อมูลชื่อนักเรียนที่มี CGPA มีนักเรียนชื่อเดียวกันสองคน ข้อแตกต่างเพียงอย่างเดียวคืออันหนึ่งเขียนว่า 'ลิลลี่' และอีกอันหนึ่งคือ 'ลิลลี่' ตอนนี้เราจะแยก CGPA ของ Lily และหลายเกณฑ์
บางครั้งเราจำเป็นต้องรวมค่าการค้นหาและส่งคืนข้อมูลทั้งหมดจากอาร์เรย์ที่กำหนด เราสามารถใช้ ฟังก์ชัน VLOOKUP ได้ที่นี่ แต่ต้องมีคอลัมน์ช่วย ด้วยคำสั่งผสม INDEX MATCH functions เราสามารถหาค่าได้อย่างง่ายดาย จากชุดข้อมูลด้านล่าง เราต้องการแยกเครื่องหมายฟิสิกส์ของ 'Mike Hansen' จากช่วง B4:D9 ในเซลล์ D12 .
ขั้นตอน:
- ก่อนอื่น เลือก เซลล์ D12B
- พิมพ์สูตร:
=INDEX($D$5:$D$9,MATCH($B$12&"|"&$C$12,$B$5:$B$9&"|"&$C$5:$C$9,0))
- สุดท้าย กด Enter เพื่อดูผลลัพธ์
➥ รายละเอียดสูตร
➤ ตรงกัน($B$12&”