ฟังก์ชัน MATCH

นำไปใช้กับ
Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

เคล็ดลับ

ลองใช้ฟังก์ชัน XMATCH ใหม่ ซึ่งเป็นเวอร์ชันที่ได้รับการปรับปรุงของ MATCH ที่ทํางานในทุกทิศทางและส่งกลับรายการที่ตรงกันตามค่าเริ่มต้น ทําให้ใช้งานง่ายและสะดวกมากกว่ารุ่นก่อน

ฟังก์ชัน MATCH จะค้นหารายการที่ระบุในช่วงของเซลล์ แล้วส่งกลับตําแหน่งสัมพัทธ์ของรายการนั้นในช่วง ตัวอย่างเช่น ถ้าช่วง A1:A3 มีค่า 5, 25 และ 38 แล้วสูตร =MATCH(25,A1:A3,0) จะส่งกลับตัวเลข 2 เนื่องจาก 25 เป็นรายการที่สองในช่วง

เคล็ดลับ

ใช้ MATCH แทนฟังก์ชัน LOOKUP เมื่อคุณต้องการตําแหน่งของรายการในช่วงแทนรายการ ตัวอย่างเช่น คุณอาจใช้ฟังก์ชัน MATCH เพื่อให้ค่าสําหรับอาร์กิวเมนต์ row_num ของฟังก์ชัน INDEX

ไวยากรณ์

MATCH(lookup_value, lookup_array, [match_type])

ไวยากรณ์ของฟังก์ชัน MATCH มีอาร์กิวเมนต์ดังนี้

  • lookup_value จําเป็น ค่าที่คุณต้องการจับคู่ใน lookup_array ตัวอย่างเช่น เมื่อคุณค้นหาหมายเลขโทรศัพท์ของใครบางคนในสมุดโทรศัพท์ คุณกําลังใช้ชื่อของบุคคลนั้นเป็นค่าการค้นหา แต่หมายเลขโทรศัพท์เป็นค่าที่คุณต้องการ

    อาร์กิวเมนต์ lookup_value อาจเป็นค่า (ตัวเลข ข้อความ หรือค่าตรรกะ) หรือการอ้างอิงเซลล์ไปยังตัวเลข ข้อความ หรือค่าตรรกะ

  • lookup_array จําเป็น ช่วงของเซลล์ที่กําลังค้นหา

  • match_type ไม่บังคับ ตัวเลข -1, 0 หรือ 1 อาร์กิวเมนต์ match_type จะระบุว่า Excel จับคู่ lookup_value กับค่าใน lookup_array อย่างไร ค่าเริ่มต้นสําหรับอาร์กิวเมนต์นี้คือ 1

    ตารางต่อไปนี้อธิบายวิธีที่ฟังก์ชันค้นหาค่าโดยยึดตามการตั้งค่าของอาร์กิวเมนต์ match_type

Match_type ลักษณะการทำงาน
1 หรือละไว้ MATCH จะค้นหาค่าที่มากที่สุดซึ่งน้อยกว่าหรือเท่ากับ lookup_value ค่าในอาร์กิวเมนต์ lookup_array ต้องเรียงจากน้อยไปหามาก ตัวอย่างเช่น ...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE
0 MATCH จะค้นหาค่าแรกที่เท่ากับ lookup_value ค่าในอาร์กิวเมนต์ lookup_array อาจเป็นลําดับใดก็ได้
-1 MATCH ค้นหาค่าที่น้อยที่สุดซึ่งมากกว่าหรือเท่ากับlookup_value ค่าในอาร์กิวเมนต์ lookup_array ต้องเรียงจากมากไปหาน้อย ตัวอย่างเช่น: TRUE, FALSE, Z-A, ... 2, 1, 0, -1, -2, ... และอื่นๆ
  • MATCH ส่งกลับตําแหน่งของค่าที่ตรงกันภายใน lookup_array ไม่ใช่ค่าที่ตรงกัน ตัวอย่างเช่น MATCH("b",{"a","b","c"},0) จะส่งกลับ 2 ซึ่งเป็นตําแหน่งสัมพัทธ์ของ "b" ภายในอาร์เรย์ {"a","b","c"}
  • ฟังก์ชัน MATCH ไม่แยกความแตกต่างระหว่างตัวพิมพ์ใหญ่และตัวพิมพ์เล็กเมื่อมีการเปรียบเทียบค่าข้อความ
  • ถ้า MATCH ไม่ประสบความสำเร็จในการค้นหาค่าที่ตรงกัน จะส่งกลับ #N/A เป็นค่าความผิดพลาด
  • ถ้า match_type เป็น 0 และ lookup_value เป็นสตริงข้อความ คุณสามารถใช้อักขระตัวแทน คือ เครื่องหมายคําถาม (?) และเครื่องหมายดอกจัน (*) ในอาร์กิวเมนต์ lookup_value ได้ เครื่องหมายคําถามตรงกับอักขระตัวเดียว เครื่องหมายดอกจันใช้แทนอักขระหลายตัวติดกัน ถ้าคุณต้องการค้นหาเครื่องหมายคําถามหรือดอกจันจริงๆ ให้พิมพ์ เครื่องหมายตัวหนอน (~) ไว้หน้าอักขระ

ตัวอย่าง

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

ผลิตภัณฑ์ นับจำนวน  
กล้วย 25
ส้ม 38
แอปเปิล 40
แพร์ 41
สูตร คำอธิบาย ผลลัพธ์
=MATCH(39,B2:B5,1) เนื่องจากไม่มีค่าที่ตรงกันพอดี จึงส่งกลับค่าตำแหน่งของค่าน้อยสุดถัดไป (38) ในช่วงเซลล์ B2:B5 2
=MATCH(41,B2:B5,0) ตำแหน่งของค่า 41 จากในช่วง B2:B5 4
=MATCH(40,B2:B5,-1) ส่งกลับค่าข้อผิดพลาด เนื่องจากค่าในช่วงเซลล์ B2:B5 ไม่ได้เรียงตามลำดับจากมากไปหาน้อย #N/A