ฟังก์ชัน INDEX ใน Excel เป็นหนึ่งในฟังก์ชันอ้างอิงที่มีประสิทธิภาพมาก โดยช่วยให้เราสามารถดึงค่าจากตำแหน่งที่ระบุภายในตารางหรือช่วงข้อมูลได้อย่างแม่นยำ ฟังก์ชันนี้สามารถใช้ทั้งในรูปแบบ 2 มิติ (แถว-คอลัมน์) และ 1 มิติ (แถวเดียวหรือคอลัมน์เดียว) และยังสามารถทำงานร่วมกับฟังก์ชันอื่น เช่น MATCH, COUNTA เพื่อสร้างสูตร dynamic
การใช้ INDEX ช่วยลดการใช้ VLOOKUP หรือ HLOOKUP ที่มีข้อจำกัดเรื่องตำแหน่ง และยังทำให้สูตรเร็วขึ้นในไฟล์ที่มีข้อมูลจำนวนมาก
ประโยชน์ของฟังก์ชัน INDEX ใน Excel
- ดึงค่าจากตำแหน่งที่ระบุในตารางได้แม่นยำ
- ใช้กับข้อมูล 1 มิติหรือ 2 มิติได้
- ทำงานร่วมกับฟังก์ชัน MATCH, COUNTA เพื่อสร้างสูตร dynamic
- ทำงานเร็วกว่า VLOOKUP/HLOOKUP ในไฟล์ขนาดใหญ่
- ช่วยสร้างรายงานหรือแดชบอร์ดที่มีความยืดหยุ่น
รูปแบบการใช้งาน (Syntax)
=INDEX(array, row_num, [column_num])
array→ ช่วงข้อมูลหรือตารางrow_num→ หมายเลขแถวที่ต้องการดึงค่า[column_num]→ หมายเลขคอลัมน์ที่ต้องการดึงค่า (ไม่บังคับสำหรับ 1 มิติ)
ตัวอย่างการประยุกต์ใช้งานฟังก์ชัน INDEX ใน Excel
ตัวอย่างที่ 1: ดึงค่าจากแถวที่ 2 คอลัมน์ที่ 3
โจทย์: ต้องการดึงค่าจากตาราง A1:C3 ที่อยู่แถว 2, คอลัมน์ 3
ข้อมูลตัวอย่าง
| A | B | C |
|---|---|---|
| 10 | 20 | 30 |
| 40 | 50 | 60 |
| 70 | 80 | 90 |
สูตร
=INDEX(A1:C3, 2, 3)

ขั้นตอนการทำงาน
arrayกำหนดค่าA1:C3เพื่อระบุช่วงตารางrow_numกำหนดค่า2เพื่อระบุแถวที่ 2column_numกำหนดค่า3เพื่อระบุคอลัมน์ที่ 3- INDEX ดึงค่าจากตำแหน่งแถว 2, คอลัมน์ 3 (ผลลัพธ์ = 60)
ผลลัพธ์
60

ตัวอย่างที่ 2: ดึงค่าจากคอลัมน์เดียว
โจทย์: ต้องการดึงค่าแถวที่ 3 ในคอลัมน์ A1:A5
ข้อมูลตัวอย่าง
| A |
|---|
| 100 |
| 200 |
| 300 |
| 400 |
| 500 |
สูตร
=INDEX(A1:A5, 3)

arrayกำหนดค่าA1:A5เพื่อระบุช่วงคอลัมน์เดียวrow_numกำหนดค่า3เพื่อระบุแถวที่ 3column_numไม่ต้องใส่ (เพราะเป็นคอลัมน์เดียว)- INDEX ดึงค่าแถวที่ 3 (ผลลัพธ์ = 300)
ผลลัพธ์
300

ตัวอย่างที่ 3: ใช้ฟังก์ชัน INDEX ใน Excel ร่วมกับฟังก์ชัน MATCH เพื่อดึงค่าตามชื่อ
โจทย์: ต้องการหายอดขายของ “สมชาย” ในตาราง
ข้อมูลตัวอย่าง
| ชื่อ | ยอดขาย |
|---|---|
| สมชาย | 5000 |
| สมหญิง | 7000 |
| สมปอง | 6000 |
สูตร
=INDEX(B2:B4, MATCH("สมชาย", A2:A4, 0))

arrayกำหนดค่าB2:B4เพื่อระบุช่วงยอดขายrow_numกำหนดค่าMATCH("สมชาย", A2:A4, 0)เพื่อหาแถวที่ตรงกับ “สมชาย”column_numไม่ต้องใส่ (เพราะเป็นคอลัมน์เดียว)- INDEX ดึงยอดขายของ “สมชาย” (ผลลัพธ์ = 5000)
ผลลัพธ์
5000

ตัวอย่างที่ 4: ดึงทั้งแถวหรือคอลัมน์ด้วย INDEX
โจทย์: ต้องการดึงคอลัมน์ที่ 2 ทั้งชุดจากตาราง A1:C3
ข้อมูลตัวอย่าง
| A | B | C |
|---|---|---|
| 1 | 2 | 3 |
| 4 | 5 | 6 |
| 7 | 8 | 9 |
สูตร
=INDEX(A1:C3, 0, 2)

array→ กำหนดค่าA1:C3เพื่อระบุช่วงตารางrow_num→ กำหนดค่า0เพื่อดึง “ทุกแถว”column_num→ กำหนดค่า2เพื่อระบุคอลัมน์ที่ 2- INDEX → ดึงทั้งคอลัมน์ B (ผลลัพธ์ = {2;5;8})
ผลลัพธ์

คำแนะนำเพิ่มเติมในการใช้งาน
- ถ้า
row_numเป็น 0 จะดึงทั้งคอลัมน์ - ถ้า
column_numเป็น 0 จะดึงทั้งแถว - ใช้ร่วมกับฟังก์ชัน MATCH, COUNTA เพื่อสร้างสูตร dynamic ที่ค้นหาตามเงื่อนไข
- ฟังก์ชัน INDEX เร็วกว่า VLOOKUP และ HLOOKUP เมื่อทำงานกับข้อมูลขนาดใหญ่
สรุป
ฟังก์ชัน INDEX ใน Excel เป็นฟังก์ชันอ้างอิงที่มีความยืดหยุ่นสูง สามารถดึงค่าได้ทั้งจากข้อมูลแบบหนึ่งมิติและสองมิติ โดยระบุแถวและคอลัมน์ตามที่ต้องการ ฟังก์ชัน INDEX สามารถใช้ร่วมกับฟังก์ชัน MATCH เพื่อสร้างสูตร dynamic ที่ค้นหาตามเงื่อนไข และเมื่อใช้ร่วมกับฟังก์ชันอื่น เช่น COUNTA, IF, SUM สามารถช่วยแก้โจทย์วิเคราะห์ข้อมูลที่ซับซ้อนได้อย่างมีประสิทธิภาพ การทำความเข้าใจการทำงานของฟังก์ชัน INDEX จึงถือเป็นพื้นฐานสำคัญสำหรับการทำงานกับ Excel ในระดับมืออาชีพ
ข้อมูลอ้างอิง: INDEX function
