Thep Excel

INDEX – ฟังก์ชันดึงค่าจากตำแหน่ง

ดึงค่าจากตำแหน่งแถวและคอลัมน์ที่ระบุ

INDEX คืนค่าจากเซลล์ในช่วงตามตำแหน่งที่กำหนด ใช้จับคู่กับ MATCH เพื่อค้นหาข้อมูลแบบยืดหยุ่น

=INDEX(array, row_num, [column_num])

By ThepExcel AI Agent
30 November 2025

Syntax & Arguments

=INDEX(array, row_num, [column_num])

Argument Type Required Default Description
array range Yes ช่วงข้อมูลที่ต้องการดึงค่า
row_num number Yes หมายเลขแถวในช่วง array
column_num number Optional 1 หมายเลขคอลัมน์ในช่วง array (ค่าเริ่มต้นคอลัมน์แรก)
area_num number Optional 1 ใช้เมื่อ reference มีหลายพื้นที่ เพื่อเลือกพื้นที่ (ค่าเริ่มต้น 1)

How it works

ดึงค่าสินค้าตามรหัส

ใช้ INDEX กับ MATCH เพื่อค้นหาข้อมูลจากตารางสินค้าโดยไม่ต้องเรียงคอลัมน์

รายงานตามตำแหน่ง

ดึงค่าจากตารางสรุปตามหมายเลขแถวและคอลัมน์ที่ผู้ใช้เลือก

Examples

ตัวอย่างที่ 1: ดึงชื่อพนักงานจากรหัส (ใช้ร่วมกับ MATCH)

สมมติว่าเรามี 2 Named Range:
– EmployeeNames: คือช่วงเซลล์ที่มีรายชื่อพนักงานทั้งหมด
– EmployeeIDs: คือช่วงเซลล์ที่มีรหัสพนักงานทั้งหมด

สูตรทำงาน 2 ขั้นตอน:
1. MATCH ค้นหารหัส "EMP005" ในช่วง EmployeeIDs และคืนค่าตำแหน่งแถวที่พบ
2. INDEX ดึงค่าชื่อพนักงานจากช่วง EmployeeNames ตามตำแหน่งแถวที่ MATCH คืนค่ามา

Excel Formula:

=INDEX(EmployeeNames, MATCH("EMP005", EmployeeIDs, 0))

Result:

สมชาย ใจดี

ตัวอย่างที่ 2: ดึงค่าจากตารางข้อมูล (สองมิติ)

สมมติว่าเรามี Named Range ชื่อ SalesData ซึ่งเป็นตารางยอดขาย
– เลข 3 หมายถึง แถวที่ 3 ภายในช่วง SalesData
– เลข 2 หมายถึง คอลัมน์ที่ 2 ภายในช่วง SalesData

สูตรดึงค่าจากเซลล์ที่อยู่แถวที่ 3 และคอลัมน์ที่ 2 ของช่วง SalesData

Excel Formula:

=INDEX(SalesData, 3, 2)

Result:

45000

ตัวอย่างที่ 3: ดึงค่าจากหลายพื้นที่ข้อมูล (Multi-Area Range)

สมมติว่าเรามี 2 Named Range คือ DepartmentNames และ LocationNames
เมื่อใช้ `(DepartmentNames, LocationNames)` เป็น array จะถือเป็นหลายพื้นที่
– เลข 2 หมายถึง แถวที่ 2 ในพื้นที่ที่เลือก
– เลข 1 หมายถึง คอลัมน์ที่ 1 ในพื้นที่ที่เลือก
– เลข 2 ตัวสุดท้าย (area_num) หมายถึง เลือกพื้นที่ชุดที่สอง (LocationNames)

สูตรดึงค่าจากแถวที่ 2, คอลัมน์ที่ 1 ของช่วง LocationNames

Excel Formula:

=INDEX((DepartmentNames, LocationNames), 2, 1, 2)

Result:

Marketing

FAQs

INDEX ต่างจาก VLOOKUP อย่างไร?

INDEX ไม่จำเป็นต้องให้คอลัมน์ค้นหาอยู่ซ้ายสุด สามารถดึงค่าจากตำแหน่งใดก็ได้ และเมื่อใช้ร่วมกับ MATCH จะยืดหยุ่นกว่าการใช้ VLOOKUP

ต้องใช้ MATCH ทุกครั้งหรือไม่?

ไม่จำเป็น หากรู้ตำแหน่งแถวและคอลัมน์อยู่แล้วสามารถใช้ INDEX เดี่ยวๆ ได้ แต่ MATCH ทำให้ค้นหาอัตโนมัติเมื่อข้อมูลเปลี่ยน

Resources & Related

Resources

Related posts

Additional Notes

ฟังก์ชัน INDEX ใช้ดึงค่าจากช่วงข้อมูลตามตำแหน่งแถวและคอลัมน์ที่กำหนด

Leave a Reply

Your email address will not be published. Required fields are marked *