วิธีการใช้ฟังก์ชันของแผ่นงาน INDEX และ MATCH กับเกณฑ์จำนวนมากใน Excel

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 214142 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
หากต้องการดูบทความนี้สำหรับ Microsoft Excel 98 และรุ่นก่อนหน้า โปรดดูที่ 59482.
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

บทความนี้มีหลายตัวอย่างที่ใช้ฟังก์ชันของแผ่นงาน INDEX และ MATCH ใน Microsoft Excel เพื่อหาค่าจากเกณฑ์จำนวนมาก

ข้อมูลเพิ่มเติม

ตัวอย่างต่อไปนี้ใช้ฟังก์ชันของแผ่นงาน INDEX และ MATCH เพื่อหาค่าจากเกณฑ์จำนวนมาก

ตัวอย่างที่ 1: ข้อมูลในคอลัมน์

วิธีที่ 1

  1. เริ่ม Excel
  2. พิมพ์ข้อมูลต่อไปนี้ลงในแผ่นงานใหม่:
       A1: ส่วน   B1:  รหัส   C1:  ราคา   D1:  ค้นหาส่วน  E1:  ค้นหารหัส
       A2: x      B2:  11   C2:  5.00      D2:  y          E2:  12
       A3: x      B3:  12   C3:  6.00    D3:  y          E3:  11
       A4: y          B4:  11   C4:  7.00     D4:  x      E4:  12
       A5: y          B5:  12   C5:  8.00   D5:  x      E5:  11
    					
  3. เมื่อต้องการเรียกข้อมูลราคาสำหรับส่วน y ด้วยรหัส 12 และคืนค่าไปยังเซลล์ F2 ให้พิมพ์สูตรต่อไปนี้ลงในเซลล์ F2:
    =INDEX($C$2:$C$5,MATCH(D2,IF($B$2:$B$5=E2,$A$2:$A$5),0))
  4. กด CTRL+SHIFT+ENTER เพื่อป้อนสูตรเป็นสูตรอาร์เรย์

    สูตรจะส่งกลับค่า 8.00
  5. เลือกเซลล์ F2 จับจุดจับเติม แล้วเติมไปจนถึงเซลล์ F5 เพื่อเรียกข้อมูลราคาสำหรับแต่ละส่วนและชุดรหัส

วิธีที่ 2

วิธีที่สองให้ผลลัพธ์เดียวกันแต่จะใช้การเรียงต่อกันแทน สูตรตัวอย่างต่อไปนี้อาจจะเหมาะสมกว่าสำหรับการจับคู่ข้อมูลกับเกณฑ์มากกว่าสองเกณฑ์เนื่องจากไม่ต้องใช้คำสั่ง IF ที่ซ้อนกัน วิธีนี้จะเหมือนกับวิธีที่ 1 ยกเว้น คุณจะต้องแทนที่สูตรในขั้นตอนที่ 3 ด้วยสูตรต่อไป:
=INDEX($C$2:$C$5,MATCH(D2&E2,$A$2:$A$5&$B$2:$B$5,0))

ตัวอย่างที่ 2: ข้อมูลที่จัดเรียงในแถว

วิธีที่ 1

  1. เริ่ม Excel
  2. พิมพ์ข้อมูลต่อไปนี้ลงในแผ่นงานใหม่:
       A1: ส่วน        B1: x      C1: x      D1: y          E1: y
       A2: รหัส        B2: 11   C2: 12      D2: 11     E2: 12
       A3: ราคา       B3: 5.00   C3: 6.00   D3: 7.00     E3: 8.00
       A4: ค้นหาส่วน  B4: y      C4: y     D4: x       E4: x
       A5: ค้นหารหัส   B5: 12   C5: 11   D5: 12     E5: 11
    					
  3. เมื่อต้องการเรียกข้อมูลราคาสำหรับส่วน y ด้วยรหัส 12 และคืนค่าไปยังเซลล์ B6 ให้พิมพ์สูตรต่อไปนี้ลงในเซลล์ B6:
    =INDEX($B$3:$E$3,MATCH(B4,IF($B$2:$E$2=B5,$B$1:$E$1),0))
  4. กด CTRL+SHIFT+ENTER เพื่อป้อนสูตรเป็นสูตรอาร์เรย์

    สูตรจะส่งกลับค่า 8.00
  5. เลือกเซลล์ B6 จับจุดจับเติม แล้วเติมไปจนถึงเซลล์ E6 เพื่อเรียกข้อมูลราคาสำหรับแต่ละส่วนและชุดรหัส

วิธีที่ 2

วิธีที่สองให้ผลลัพธ์เดียวกันแต่จะใช้การเรียงต่อกันแทน สูตรตัวอย่างต่อไปนี้อาจจะเหมาะสมกว่าสำหรับการจับคู่ข้อมูลกับเกณฑ์มากกว่าสองเกณฑ์เนื่องจากไม่ต้องใช้คำสั่ง IF ที่ซ้อนกัน วิธีนี้จะเหมือนกับวิธีที่ 1 (ในตัวอย่างที่ 2) ยกเว้น คุณจะต้องแทนที่สูตรในขั้นตอนที่ 3 ด้วยสูตรต่อไป:
=INDEX($B$3:$E$3,MATCH(B4&B5,$B$1:$E$1&$B$2:$E$2,0))

คุณสมบัติ

หมายเลขบทความ (Article ID): 214142 - รีวิวครั้งสุดท้าย: 30 กรกฎาคม 2556 - Revision: 6.0
ใช้กับ
  • Microsoft Office Excel 2003
  • Microsoft Office Excel 2007
  • Microsoft Excel 2010
Keywords: 
kbquery kbfunctions kbhowto KB214142

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com