ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้

ฟังก์ชัน INDEX

ฟังก์ชัน INDEX ส่งกลับค่าหรือการอ้างอิงไปยังค่าจากภายในตารางหรือช่วง

เบราว์เซอร์ของคุณไม่สนับสนุนวิดีโอ

มีสองวิธีในการใช้ฟังก์ชัน INDEX:

รูปแบบอาร์เรย์

คำอธิบาย

ส่งกลับค่าขององค์ประกอบในตารางหรืออาร์เรย์ ซึ่งเลือกโดยดัชนีหมายเลขแถวและหมายเลขคอลัมน์

ให้ใช้รูปแบบที่เป็นอาร์เรย์ถ้าอาร์กิวเมนต์แรกไปยัง INDEX เป็นค่าคงที่อาร์เรย์

ไวยากรณ์

INDEX(array, row_num, [column_num])

รูปแบบอาร์เรย์ของฟังก์ชัน INDEX มีอาร์กิวเมนต์ดังนี้

  • array    จำเป็น ช่วงของเซลล์หรือค่าคงที่อาร์เรย์

    • ถ้าอาร์เรย์มีเพียงหนึ่งแถวหรือหนึ่งคอลัมน์อาร์กิวเมนต์row_numหรือcolumn_numที่สอดคล้อง

    • ถ้าอาร์เรย์มีมากกว่าหนึ่งแถวและมากกว่าหนึ่งคอลัมน์ และมีการใช้เฉพาะ row_num หรือ column_num เท่านั้น INDEX จะส่งกลับอาร์เรย์ของทั้งแถวหรือทั้งคอลัมน์ในอาร์เรย์

  • row_num    ต้องระบุ column_numแสดงอยู่ เลือกแถวในอาร์เรย์ที่จะส่งกลับค่า ถ้าคุณrow_numละไว้ column_numต้องระบุ

  • column_num    ไม่จำเป็น เลือกคอลัมน์ในอาร์เรย์ที่จะส่งกลับค่า ถ้าคุณcolumn_numละไว้ row_numต้องระบุ

ข้อสังเกต

  • ถ้ามีการใช้ทั้งrow_numและcolumn_numสูตร INDEX จะส่งกลับค่าในเซลล์ที่จุดตัดของrow_num column_num

  • row_numและcolumn_numต้องชี้ไปที่เซลล์ภายในอาร์เรย์ มิฉะนั้น INDEX จะส่งกลับข้อผิดพลาด #REF! ข้อผิดพลาด

  • ถ้าคุณตั้งค่าrow_numค่าcolumn_numเป็น 0 (ศูนย์) ฟังก์ชัน INDEX จะส่งกลับอาร์เรย์ของค่าสําหรับทั้งคอลัมน์หรือทั้งแถวตามลําดับ เมื่อต้องการใช้ค่าที่ส่งกลับเป็นอาร์เรย์ ให้ใส่ฟังก์ชัน INDEX เป็นสูตรอาร์เรย์

    หมายเหตุ: ถ้าคุณมี Microsoft 365เวอร์ชันปัจจุบัน คุณสามารถใส่สูตรในเซลล์ด้านบนซ้ายของช่วงผลลัพธ์ แล้วกด ENTER เพื่อยืนยันสูตรเป็นสูตรอาร์เรย์แบบไดนามิก มิฉะนั้น ต้องใส่สูตรเป็นสูตรอาร์เรย์ดั้งเดิมโดยการเลือกช่วงผลลัพธ์ ป้อนสูตรในเซลล์ด้านซ้ายบนของช่วงผลลัพธ์ แล้วกด CTRL+SHIFT+ENTER เพื่อยืนยัน Excel จะแทรกวงเล็บปีกกาที่จุดเริ่มต้นและจุดสิ้นสุดของสูตรให้คุณ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสูตรอาร์เรย์ ให้ดูที่ คำแนะนำและตัวอย่างของสูตรอาร์เรย์

ตัวอย่าง

ตัวอย่าง 1

ตัวอย่างเหล่านี้ใช้ฟังก์ชัน INDEX เพื่อค้นหาค่าในเซลล์ที่ตัดกันซึ่งแถวและคอลัมน์บรรจบกัน

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

ข้อมูล

ข้อมูล

Apples

Lemons

Bananas

Pears

สูตร

คำอธิบาย

ผลลัพธ์

=INDEX(A2:B3,2,2)

ค่าที่จุดตัดของแถวที่สองกับคอลัมน์ที่สองในช่วงเซลล์ A2:B3

Pears

=INDEX(A2:B3,2,1)

ค่าที่จุดตัดของแถวที่สองและคอลัมน์แรกในช่วงเซลล์ A2:B3

Bananas

ตัวอย่าง 2

ตัวอย่างนี้ใช้ฟังก์ชัน INDEX ในสูตรอาร์เรย์เพื่อหาค่าในเซลล์สองเซลล์ที่ระบุในอาร์เรย์ 2x2

หมายเหตุ: ถ้าคุณมี Microsoft 365เวอร์ชันปัจจุบัน คุณสามารถใส่สูตรในเซลล์ด้านบนซ้ายของช่วงผลลัพธ์ แล้วกด ENTER เพื่อยืนยันสูตรเป็นสูตรอาร์เรย์แบบไดนามิก มิฉะนั้น ต้องใส่สูตรเป็นสูตรอาร์เรย์ดั้งเดิมโดยเลือกเซลล์ว่างสองเซลล์ ป้อนสูตรในเซลล์ด้านซ้ายบนของช่วงผลลัพธ์ แล้วกด CTRL+SHIFT+ENTER เพื่อยืนยัน Excel จะแทรกวงเล็บปีกกาที่จุดเริ่มต้นและจุดสิ้นสุดของสูตรให้คุณ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสูตรอาร์เรย์ ให้ดูที่ คำแนะนำและตัวอย่างของสูตรอาร์เรย์

สูตร

คำอธิบาย

ผลลัพธ์

=INDEX({1,2;3,4},0,2)

ค่าที่พบในแถวแรก คอลัมน์ที่สองในอาร์เรย์ อาร์เรย์ที่มี 1 และ 2 ในแถวแรกและ 3 และ 4 ในแถวที่สอง

2

ค่าที่พบในแถวที่สอง คอลัมน์ที่สองในอาร์เรย์ (อาร์เรย์เดียวกันกับด้านบน)

4

ด้านบนของหน้า


ฟอร์มการอ้างอิง

คำอธิบาย

ส่งกลับค่าการอ้างอิงของเซลล์ที่จุดตัดของแถวและคอลัมน์ที่ระบุ ถ้าการอ้างอิงนั้นสร้างขึ้นจากการเลือกที่ไม่อยู่ติดกัน คุณสามารถเลือกส่วนที่เลือกที่จะค้นหาได้

ไวยากรณ์

INDEX(reference, row_num, [column_num], [area_num])

รูปแบบการอ้างอิงของฟังก์ชัน INDEX มีอาร์กิวเมนต์ดังนี้

  • การอ้างอิง    จำเป็น การอ้างอิงไปยังช่วงของเซลล์อย่างน้อยหนึ่งช่วง

    • ถ้าคุณใส่ช่วงที่ไม่ได้อยู่ติดกันเป็นการอ้างอิง ให้ใส่เครื่องหมายวงเล็บล้อมรอบการอ้างอิงนั้น

    • ถ้าแต่ละพื้นที่ในการอ้างอิงมีเพียงหนึ่งแถวหรือหนึ่งคอลัมน์ อาร์กิวเมนต์ row_numหรือcolumn_numตามลําดับ จะระบุหรือไม่ก็ได้ ตัวอย่างเช่น ใช้ INDEX(reference,,column_num)

  • row_num    จำเป็น จํานวนแถวในการอ้างอิงที่จะส่งกลับการอ้างอิง

  • column_num    ไม่จำเป็น จํานวนคอลัมน์ในการอ้างอิงที่จะส่งกลับการอ้างอิง

  • area_num    ไม่จำเป็น เลือกช่วงในการอ้างอิงที่จะส่งกลับจุดตัดของrow_numและcolumn_num พื้นที่แรกที่เลือกหรือใส่เป็นหมายเลข 1 พื้นที่ที่สองเป็น 2 และอื่นๆ ถ้ามีarea_numถูกละไว้ INDEX จะใช้พื้นที่ 1  พื้นที่ทั้งหมดที่แสดงรายการอยู่ที่นี่ต้องอยู่ในแผ่นงานเดียว  ถ้าคุณระบุพื้นที่ที่ไม่ได้อยู่ในแผ่นงานเดียวกันเหมือนพื้นที่อื่น จะทำให้เกิด #VALUE! เป็นข้อผิดพลาด  ถ้าคุณต้องการใช้ช่วงที่อยู่ในแผ่นงานอื่น ขอแนะนำให้คุณใช้รูปแบบอาร์เรย์ของฟังก์ชัน INDEX และใช้ฟังก์ชันอื่นเพื่อคำนวณช่วงที่สร้างอาร์เรย์ขึ้น  ตัวอย่างเช่น คุณสามารถใช้ฟังก์ชัน CHOOSE เพื่อคำนวณช่วงที่จะใช้ได้

ตัวอย่างเช่น ถ้าการอ้างอิงอธิบายเซลล์ (A1:B4,D1:E4,G1:H4) area_num 1 คือช่วง A1:B4, area_num 2 คือช่วง D1:E4 และ area_num 3 คือช่วง G1:H4

ข้อสังเกต

  • หลังจากการอ้างอิงarea_numได้เลือกช่วงใดช่วงหนึ่งแล้ว row_num และ column_num จะเลือกเซลล์ใดเซลล์หนึ่ง เช่น row_num 1 เป็นแถวแรกในช่วง column_num 1 เป็นคอลัมน์แรก และอื่นๆ การอ้างอิงที่ส่งกลับโดย INDEX คือจุดตัดของrow_numและcolumn_num

  • ถ้าคุณตั้งค่าrow_numค่าcolumn_numเป็น 0 (ศูนย์) ฟังก์ชัน INDEX จะส่งกลับการอ้างอิงสําหรับทั้งคอลัมน์หรือทั้งแถวตามลําดับ

  • row_num, column_num และarea_numจะต้องชี้ไปที่เซลล์ภายในการอ้างอิง มิฉะนั้น INDEX จะส่งกลับข้อผิดพลาด #REF! ข้อผิดพลาด ถ้าrow_numและcolumn_numถูกละไว้ INDEX จะส่งกลับพื้นที่ในการอ้างอิงที่ระบุarea_numเขตข้อมูล

  • ผลลัพธ์ของฟังก์ชัน INDEX เป็นการอ้างอิง และจะถูกแปลเป็นเช่นนั้นด้วยสูตรอื่น อาจจะมีการใช้ค่าที่ส่งกลับมาของ INDEX เป็นการอ้างอิงหรือเป็นค่า ทั้งนี้ขึ้นอยู่กับสูตรนั้นๆ เช่น สูตร CELL("width",INDEX(A1:B2,1,2)) จะเหมือนกับ CELL("width",B1) ฟังก์ชัน CELL ใช้ค่าที่ส่งกลับมาของ INDEX เป็นการอ้างอิงเซลล์ ในทางกลับกัน สูตรดังเช่น 2*INDEX(A1:B2,1,2) จะแปลค่าที่ส่งกลับมาของ INDEX เป็นตัวเลขในเซลล์ B1

ตัวอย่าง

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

ผลไม้

ราคา

นับจำนวน

Apples

$0.69

40

Bananas

$0.34

38

Lemons

$0.55

15

Oranges

$0.25

25

Pears

$0.59

40

Almonds

$2.80

10

Cashews

$3.55

16

Peanuts

$1.25

20

Walnuts

$1.75

1.2

สูตร

คำอธิบาย

ผลลัพธ์

=INDEX(A2:C6, 2, 3)

จุดตัดของแถวที่สองและคอลัมน์ที่สามในช่วงเซลล์ A2:C6 ซึ่งเป็นเนื้อหาในเซลล์ C3

38

=INDEX((A1:C6, A8:C11), 2, 2, 2)

จุดตัดของแถวที่สองและคอลัมน์ที่สองในพื้นที่ที่สองของ A8:C11 ซึ่งเป็นเนื้อหาในเซลล์ B9

1.25

=SUM(INDEX(A1:C11, 0, 3, 1))

ผลบวกของคอลัมน์ที่สามในพื้นที่แรกของช่วงเซลล์ A1:C11 ซึ่งเป็นผลบวกของช่วงเซลล์ C1:C11

216

=SUM(B2:INDEX(A2:C6, 5, 2))

ผลบวกของช่วงเซลล์ที่เริ่มต้นจาก B2 และสิ้นสุดที่จุดตัดของแถวที่ห้ากับคอลัมน์ที่สองของช่วงเซลล์ A2:A6 ซึ่งเป็นผลบวกของช่วงเซลล์ B2:B6

2.42

ด้านบนของหน้า

ดูเพิ่มเติม

ฟังก์ชัน VLOOKUP

ฟังก์ชัน MATCH

ฟังก์ชัน INDIRECT

แนวทางและตัวอย่างของสูตรอาร์เรย์

ฟังก์ชันการค้นหาและการอ้างอิง (ข้อมูลอ้างอิง)

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ขยายทักษะ Office ของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×