ฟังก์ชัน MATCH
Applies To
Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel สำหรับเว็บ 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 |