วิธีใช้ฟังก์ชัน INDEX ใน Excel (6 ตัวอย่างที่มีประโยชน์)

  • แบ่งปันสิ่งนี้
Hugh West

ฟังก์ชัน INDEX เป็นหนึ่งในฟังก์ชัน Excel 10 ฟังก์ชันที่มีผู้ใช้สูงสุด ในบทช่วยสอนนี้ คุณจะได้รับแนวคิดที่สมบูรณ์เกี่ยวกับวิธีการทำงานของฟังก์ชัน INDEX ใน Excel แยกกันและกับฟังก์ชัน Excel อื่นๆ

คุณจะได้รับฟังก์ชัน Excel INDEX ในสองรูปแบบ: แบบฟอร์มอาร์เรย์ และ แบบฟอร์มอ้างอิง .

ฟังก์ชัน Excel INDEX ในรูปแบบอาร์เรย์ (มุมมองด่วน):

เมื่อคุณต้องการส่งคืนค่า (หรือค่าต่างๆ) จากช่วงเดียว คุณจะใช้รูปแบบอาร์เรย์ของฟังก์ชัน INDEX

ฟังก์ชัน INDEX ของ Excel ในแบบฟอร์มอ้างอิง (มุมมองด่วน):

เมื่อคุณต้องการส่งคืนค่า (หรือค่าต่างๆ) จากหลายช่วง คุณจะใช้แบบฟอร์มอ้างอิงของ INDEX ฟังก์ชั่น

ดาวน์โหลดสมุดงาน Excel

ดาวน์โหลดสมุดงาน Excel เพื่อให้คุณสามารถฝึกฝนได้ด้วยตัวเอง

การใช้ฟังก์ชัน INDEX.xlsx

ความรู้เบื้องต้นเกี่ยวกับฟังก์ชัน INDEX ใน Excel

วัตถุประสงค์ของฟังก์ชัน:

ส่งกลับค่าหรือการอ้างอิงของเซลล์ที่จุดตัดของแถวและคอลัมน์เฉพาะในช่วงที่กำหนด

ไวยากรณ์ของฟังก์ชัน INDEX ในรูปแบบอาร์เรย์:

=INDEX (อาร์เรย์, row_num, [column_num])

อาร์กิวเมนต์:

อาร์กิวเมนต์ จำเป็น/ ไม่บังคับ ค่า
อาร์เรย์ จำเป็น ส่งผ่านช่วงของเซลล์หรือค่าคงที่อาร์เรย์ไปยังอาร์กิวเมนต์นี้
row_numจับคู่เกณฑ์เดียว/หลายรายการกับผลลัพธ์เดียว/หลายรายการ
  • จับคู่ INDEX ของ Excel เพื่อส่งคืนค่าหลายค่าในเซลล์เดียว
  • INDEX จับคู่เกณฑ์หลายรายการพร้อมสัญลักษณ์แทน ใน Excel (คู่มือฉบับสมบูรณ์)
  • วิธีเลือกข้อมูลเฉพาะใน Excel (6 วิธี)
  • ตัวอย่างที่ 6: ฟังก์ชัน INDEX ยังสามารถเป็น ใช้เป็นการอ้างอิงเซลล์

    ในตัวอย่างที่ 5 เราได้เห็นวิธีใช้ฟังก์ชัน INDEX เพื่อส่งคืนทั้งแถวจากช่วง คุณสามารถใช้สูตรง่ายๆ ต่อไปนี้ในเซลล์ใดก็ได้เพื่อให้ได้เหมือนกัน

    =D6:G6

    ประเด็นที่ฉันพยายามทำคือ- INDEX ฟังก์ชันยังสามารถส่งกลับการอ้างอิงเซลล์แทนค่าเซลล์ ฉันจะใช้ INDEX(D6:G9,1,4) แทน G6 ในสูตรด้านบน ดังนั้นสูตรจะเป็นดังนี้

    =D6:INDEX(D6:G9,1,4)

    🔎 การประเมินสูตรนี้:

    • ก่อนอื่น เลือกเซลล์ที่มีสูตรอยู่
    • ไปที่แท็บ สูตร >> ; การตรวจสอบสูตร กลุ่ม >> คลิกที่คำสั่ง ประเมินสูตร
    • กล่องโต้ตอบ ประเมินสูตร จะเปิดขึ้น

    • ในฟิลด์การประเมิน คุณจะได้รับสูตร =D6:INDEX(D6:G9,1,4) .
    • ตอนนี้คลิกที่ ประเมิน .
    • ขณะนี้สูตรกำลังแสดงช่วงเซลล์ $D$6:$G$6 .
    • ดังนั้น สูตร INDEX ทั้งหมดจึงคืนค่า การอ้างอิงเซลล์ ไม่ใช่เซลล์ค่า

    ข้อผิดพลาดทั่วไปขณะใช้ฟังก์ชัน INDEX ใน Excel

    #REF! ข้อผิดพลาด:

    เกิดขึ้น-

    • เมื่ออาร์กิวเมนต์ row_num ที่คุณส่งผ่านสูงกว่าหมายเลขแถวที่มีอยู่ในช่วง
    • เมื่ออาร์กิวเมนต์ col_num ที่คุณส่งผ่าน สูงกว่าหมายเลขคอลัมน์ที่มีอยู่ในช่วง
    • เมื่ออาร์กิวเมนต์ area_num ที่คุณส่งผ่านสูงกว่าหมายเลขพื้นที่ที่มีอยู่

    #VALUE! ข้อผิดพลาด:

    เกิดขึ้นเมื่อคุณระบุค่าที่ไม่ใช่ตัวเลขเป็น row_num, col_num หรือ area_num

    สรุป

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

    จำเป็น ส่งหมายเลขแถวในช่วงเซลล์หรือค่าคงที่อาร์เรย์
    col_num ไม่บังคับ ส่งหมายเลขคอลัมน์ในช่วงเซลล์หรือค่าคงที่อาร์เรย์

    หมายเหตุ:

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

    ไวยากรณ์ของฟังก์ชัน INDEX ในแบบฟอร์มอ้างอิง:

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

    อาร์กิวเมนต์:

    อาร์กิวเมนต์ จำเป็น/ ไม่บังคับ ค่า
    การอ้างอิง จำเป็น ส่งผ่านช่วงหรืออาร์เรย์มากกว่าหนึ่งรายการ
    row_num จำเป็น ส่งหมายเลขแถวในช่วงเซลล์ที่ต้องการ
    col_num ไม่บังคับ ส่งหมายเลขคอลัมน์ในช่วงเซลล์ที่ต้องการ
    area_num ไม่บังคับ ส่งหมายเลขพื้นที่ที่คุณต้องการเลือกจากกลุ่มของช่วง

    หมายเหตุ:

    • หากส่งมากกว่าหนึ่งช่วงหรืออาร์เรย์เป็นค่าอาร์เรย์ คุณควรผ่านด้วยarea_num.
    • หากไม่มี area_num ฟังก์ชัน INDEX จะทำงานกับช่วงแรก หากคุณส่งค่าเป็น area_num ฟังก์ชัน INDEX จะทำงานในช่วงนั้น
    • หากแนวคิดไม่ชัดเจน ไม่ต้องกังวล ไปที่ขั้นตอนถัดไป ซึ่งฉันจะแสดงตัวอย่างจำนวนมากให้คุณใช้ฟังก์ชัน INDEX ของ Excel อย่างมีประสิทธิภาพ

    6 ตัวอย่างการใช้ฟังก์ชัน INDEX ทีละรายการและร่วมกับฟังก์ชันอื่นๆ ฟังก์ชัน Excel

    ตัวอย่างที่ 1: เลือกรายการจากรายการ

    โดยใช้ฟังก์ชัน Excel INDEX เราสามารถดึงข้อมูลใดๆ จากรายการได้ คุณสามารถใช้รหัสตายตัวของแถวหรือคอลัมน์ในสูตรหรือใช้การอ้างอิงเซลล์

    รายการหนึ่งมิติที่มีคอลัมน์เดียว:

    ตัวอย่างเช่น ถ้าเรา ต้องการดึงผลิตภัณฑ์ที่ 3 จากรายการ เราสามารถใช้สูตรต่อไปนี้ใน เซลล์ C13 โดยระบุหมายเลขแถว (หรืออีกนัยหนึ่งคือหมายเลขซีเรียล) ใน เซลล์ C12

    =INDEX(B5:B10,C12)

    หรือ

    =INDEX(B5:B10,3)

    รายการหนึ่งมิติที่มีแถวเดียว:

    ในทำนองเดียวกัน เราสามารถดึงรายการจากแถวเดียวโดยใช้ฟังก์ชัน INDEX ระบุหมายเลขซีเรียลใน คอลัมน์ B และใช้สูตรต่อไปนี้ใน เซลล์ C20 :

    =INDEX(C17:H17,,B20)

    หรือ

    =INDEX(C17:H17,3)

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

    ดึงรายการจากรายการหลายมิติ:

    ในการดึงข้อมูลรายการจากรายการหลายมิติ คุณต้องระบุแถวและหมายเลขคอลัมน์ในฟังก์ชัน INDEX

    ตัวอย่างเช่น ถ้าคุณต้องการรับรายการจาก แถวที่ 3 และ คอลัมน์ที่ 4 ของรายการ คุณต้องใส่สูตรต่อไปนี้ใน เซลล์ C33

    =INDEX(C26:H29,C31,C32)

    หมายเหตุ:

    • หากคุณระบุหมายเลขแถวเกินช่วงรายการของคุณ (อาร์เรย์ที่คุณระบุในฟังก์ชัน INDEX ) มันจะทำให้เกิด #REF! ข้อผิดพลาด .
    • คุณยังสามารถอ้างถึงอาร์เรย์เป็นข้อมูลอ้างอิงและใช้ฟังก์ชัน INDEX ตัวอย่างเช่น สูตร =INDEX({1,2,3;4,5,6;7,8,9;10,11,12},2,3) จะส่งกลับ 8 ค่าคงที่อาร์เรย์ {1,2,3;4,5,6;7,8,9;10,11,12} มีคอลัมน์คั่นด้วยเครื่องหมายอัฒภาค

    อ่านเพิ่มเติม: วิธีใช้ INDEX MATCH กับ Excel VBA

    ตัวอย่างที่ 2: การเลือกรายการจากหลายรายการ

    คุณอาจสังเกตเห็น แล้ว; ฟังก์ชัน INDEX มีอาร์กิวเมนต์ทางเลือกอื่นซึ่งก็คือ [area_num] ด้วยวิธีนี้ คุณสามารถป้อนอาร์เรย์หรือช่วงอ้างอิงหลายรายการในฟังก์ชัน INDEX และระบุว่าอาร์เรย์ใด ฟังก์ชันจะส่งกลับ รายการหรือค่า

    ตัวอย่างเช่น เรามีสองรายการที่นี่ รายการหนึ่งสำหรับ Windows และอีกรายการหนึ่งสำหรับ MSOffice คุณสามารถใช้สูตรต่อไปนี้เพื่อรับค่าจากรายการ หน้าต่าง

    =INDEX((D5:G9,I5:L9),C11,E11,1)

    <3

    หรือ

    =INDEX((D5:G9,I5:L9),C11,E11,2)

    เพื่อรับรายการจากรายการ MS Office

    หมายเหตุ:

    หากคุณไม่ระบุตัวเลขในสูตรนี้ Excel จะถือว่าพื้นที่ 1 คืนค่าตามค่าเริ่มต้น

    ตัวอย่างที่ 3: รวมฟังก์ชัน MATCH กับ INDEX เพื่อจับคู่หลายเกณฑ์และส่งคืนค่า

    ฟังก์ชัน MATCH ส่งคืนตำแหน่งสัมพัทธ์ของรายการในอาร์เรย์ที่ตรงกับค่าที่ระบุในลำดับที่ระบุ คุณสามารถเรียกดูหมายเลขแถวและคอลัมน์สำหรับช่วงที่ต้องการได้อย่างง่ายดายโดยใช้ฟังก์ชัน MATCH

    มาดูตัวอย่างต่อไปนี้ เราต้องการจับคู่เกณฑ์ที่ระบุในเซลล์ C12 และ C13

    ขั้นตอน:

    • ใช้ สูตรต่อไปนี้ใน เซลล์ C14 :
    =INDEX(B5:E10,MATCH(C13,B5:B10,0),MATCH(C12,B4:E4,0))

    • กด ENTER.

    อ่านเพิ่มเติม: INDEX จับคู่หลายเกณฑ์ในแถวและคอลัมน์ใน Excel

    <0 🔎 สูตรนี้ทำงานอย่างไร

    มาดูกันว่าสูตรนี้ทำงานอย่างไรทีละส่วน

    • MATCH( C12,B4:E4,0)

    เอาต์พุต: 3

    คำอธิบาย: The MATCH ฟังก์ชันรับอินพุตจาก เซลล์ C12 และดำเนินการจับคู่แบบตรงทั้งหมดในช่วง B4:E4 ตัวเลข 0 ในอาร์กิวเมนต์สุดท้ายบ่งชี้ว่าตรงที่นี่ สุดท้าย เนื่องจากรายการใน C12 อยู่ในคอลัมน์ที่สามของช่วง B4:E4 ฟังก์ชันจะคืนค่า 3

    • MATCH(C13,B5:B10,0)

    เอาต์พุต: 3

    คำอธิบาย : เหมือนกับฟังก์ชัน MATCH แรกที่อธิบายข้างต้น แต่คราวนี้ ฟังก์ชันทำงานแบบเรียงตามแถวตั้งแต่ช่วง B5:B10, ซึ่งหมายความว่ารายการอยู่ในแถวที่แตกต่างกันแต่อยู่ในคอลัมน์เดียว

    • INDEX (B5:E10,MATCH(C13,B5:B10,0),MATCH(C12,B4:E4,0))

    เอาต์พุต: 1930<3

    คำอธิบาย : เราสามารถทำให้สูตรง่ายขึ้นโดยใช้ผลลัพธ์ของสองส่วน MATCH ดังนั้นจะเป็น: INDEX(B5:E10,3,3) ดังนั้น ฟังก์ชัน INDEX จะเดินทางไปยังแถวที่ 3 แล้วไปที่คอลัมน์ที่ 3 ภายในช่วง B5:E10 และจากจุดตัดกันของแถว-คอลัมน์ ก็จะคืนค่านั้น

    อ่านเพิ่มเติม: วิธีใช้สูตร INDEX MATCH ใน Excel (9 ตัวอย่าง)

    ตัวอย่างที่ 4: รวมฟังก์ชัน INDEX, MATCH และ IF เพื่อจับคู่เกณฑ์หลายรายการจากสองรายการ

    ตอนนี้ หากเรามีสองรายการและต้องการจับคู่หลายเกณฑ์หลังจากเลือกหนึ่งรายการ จะทำอย่างไร ที่นี่ เราจะให้สูตรแก่คุณ

    นี่คือชุดข้อมูลของเรา และเรามีข้อมูลการขายสำหรับ Windows และ MS Office ในประเทศและปีต่างๆ <3

    เราจะกำหนดเกณฑ์ 3 ข้อ: ชื่อผลิตภัณฑ์ ปี และ ประเทศ และดึงยอดขายที่สอดคล้องกัน ข้อมูล

    ขั้นตอน:

    • ถือว่าเกณฑ์ที่กำหนดคือ- ปี: 2019 , ผลิตภัณฑ์: MS Office และ ประเทศ: แคนาดา .
    • ตั้งค่าในเซลล์ C11, C12, และ C13 ตามลำดับ
    • ตอนนี้ ใช้สูตรต่อไปนี้ใน เซลล์ C14 และกด ENTER
    =INDEX(INDEX((D5:G9,I5:L9),,,IF(C12="Windows",1,2)),MATCH(C13,B5:B9,0),MATCH(C11,INDEX((D5:G5,I5:L5),,,IF(C12="Windows",1,2)),0))

    • คุณจะเห็นข้อมูลการขายที่เกี่ยวข้องใน เซลล์ C14 ทันที
    • คุณสามารถทำให้สูตรนี้เป็นแบบไดนามิกมากขึ้นได้โดยใช้ การตรวจสอบข้อมูล .

    🔎 สูตรนี้ทำงานอย่างไร

    • IF(C12=”Windows”,1,2))

    เอาต์พุต : 2

    คำอธิบาย : เนื่องจาก Cell C12 มี Windows เกณฑ์จึงไม่ตรงกันและ ฟังก์ชัน IF คืนค่า 2

    • INDEX((D5:G9,I5:L9),,,IF(C12=”Windows”,1,2))

    เอาต์พุต : {2017 ,2018,2019,2020;8545,8417,6318,5603;5052,8052,5137,5958;9590,6451,3177,6711;5126,3763,3317,9940}

    คำอธิบาย : เนื่องจาก IF(C12=”Windows”,1,2) ส่งคืนค่า 2 ดังนั้นสูตรนี้จึงกลายเป็น INDEX((D5:G9,I5:L9),,,2) . ตอนนี้ ฟังก์ชัน INDEX ส่งกลับช่วงที่สองที่กำหนดให้กับมัน

    • MATCH(C11,INDEX((D5:G5,I5:L5),,,IF (C12=”Windows”,1,2)),0)

    เอาต์พุต : 3

    คำอธิบาย : เนื่องจาก IF(C12=”Windows”,1,2) ส่งคืน 2 ดังนั้นส่วนนี้จึงกลายเป็น MATCH(C11,INDEX((D5:G5,I5:L5),,,2) ,0). ตอนนี้ INDEX((D5:G5,I5:L5),,,2) ส่วนส่งคืน I5:G5 ซึ่งก็คือ {2017,2018,2019, 2020} . ดังนั้น สูตร MATCH กลายเป็น MATCH(C11,{2017,2018,2019,2020},0) และฟังก์ชัน MATCH จะคืนค่า 3 เนื่องจากค่า 2019 ใน เซลล์ C11 อยู่ในตำแหน่งที่ 3 ของอาร์เรย์ {2017,2018,2019,2020}

      <22 MATCH(C13,B5:B9,0),

    เอาต์พุต : 4

    คำอธิบาย : ฟังก์ชัน MATCH จับคู่ค่าของ เซลล์ C13 ในช่วง B5:B9 และส่งกลับค่า 4 เนื่องจากเป็นตำแหน่งของสตริง “Canada” ใน B5:B9 ช่วง

    • =INDEX({2017,2018,2019,2020;8545,8417,6318,5603;5052,8052,5137,5958;9590 ,6451,3177,6711;5126,3763,3317,9940},4,3)

    เอาต์พุต : 3177

    คำอธิบาย : หลังจากดำเนินการส่วนเล็กๆ ของสูตรทั้งหมดแล้ว สูตรทั้งหมดจะมีลักษณะดังนี้ และจะส่งคืนค่าที่แถวที่ 4 และคอลัมน์ที่ 3 ตัดกัน

    อ่านเพิ่มเติม: IF กับ INDEX-MATCH ใน Excel (3 แนวทางที่เหมาะสม)

    ตัวอย่างที่ 5: การคืนค่าแถวหรือคอลัมน์ทั้งหมดจากช่วง

    การใช้ฟังก์ชัน INDEX คุณยังสามารถคืนค่าแถวหรือคอลัมน์ทั้งหมดจากช่วงได้อีกด้วย โดยทำตามขั้นตอนต่อไปนี้

    ขั้นตอน:

    • สมมติว่าคุณต้องการคืนค่าแถวแรกจากรายการ Windows . ใช้สูตรต่อไปนี้ในเซลล์ใดก็ได้ (ที่นี่ ใน เซลล์ F11 ) แล้วกด ENTER
    =INDEX(D6:G9,1,0)

    • โปรดทราบว่า เราได้ระบุหมายเลขคอลัมน์เป็น 0 ที่นี่ เราสามารถใช้สูตรต่อไปนี้เพื่อรับทั้งแถว โดยใส่เครื่องหมายจุลภาคหลังอาร์กิวเมนต์ row_num และปล่อยไว้อย่างนั้นโดยไม่ระบุหมายเลขคอลัมน์ใดๆ
    =INDEX(D6:G9,1,)

    • แต่ถ้าคุณเพียงแค่เขียน =INDEX(D6:G9,1) และกด ENTER, คุณจะได้รับเฉพาะค่าแรกในแถวแรก ไม่ใช่ทั้งแถว
    • หากต้องการดูคอลัมน์แรกโดยรวม ให้ใช้สูตรต่อไปนี้ สิ่งที่คุณควรพิจารณาในกรณีที่ได้รับคืนทั้งแถวก็ใช้ได้กับกรณีนี้เช่นกัน
    =INDEX(I6:L9,,1)

    หมายเหตุ:

    • หากคุณใช้ Excel เวอร์ชันเก่ากว่า Microsoft 365 คุณต้องใช้สูตร Array เพื่อส่งคืนแถวหรือคอลัมน์จากช่วงโดยใช้ INDEX ฟังก์ชัน
    • ตัวอย่างเช่น ในชุดข้อมูลของเราที่นี่ ทุกแถวของช่วงการขายประกอบด้วย 4 ค่า ดังนั้นคุณต้องเลือก 4 เซลล์ในแนวนอน จากนั้นป้อนฟังก์ชัน INDEX
    • ตอนนี้กด CTRL + SHIFT + ENTER เพื่อป้อนสูตรเป็นสูตรอาร์เรย์
    • ในทำนองเดียวกัน คุณสามารถแสดงทั้งคอลัมน์
    • หากต้องการส่งกลับทั้งช่วง เพียงกำหนดช่วงให้กับอาร์กิวเมนต์อ้างอิง และใส่ 0 เป็นคอลัมน์และหมายเลขแถว นี่คือตัวอย่างสูตร
    =INDEX(D6:G9,0,0)

    อ่านเพิ่มเติม: วิธีจับคู่หลายเกณฑ์จากอาร์เรย์ที่ต่างกัน ใน Excel

    การอ่านที่คล้ายกัน

    • INDEX MATCH หลายเกณฑ์ใน Excel (ไม่มีสูตรอาร์เรย์)
    • <22 ดัชนี Excel

    Hugh West เป็นผู้ฝึกอบรมและนักวิเคราะห์ Excel ที่มีประสบการณ์สูงและมีประสบการณ์มากกว่า 10 ปีในอุตสาหกรรมนี้ เขาสำเร็จการศึกษาระดับปริญญาตรีสาขาการบัญชีและการเงิน และปริญญาโทสาขาบริหารธุรกิจ Hugh มีความหลงใหลในการสอนและได้พัฒนาแนวทางการสอนที่เป็นเอกลักษณ์ซึ่งง่ายต่อการติดตามและเข้าใจ ความรู้ความเชี่ยวชาญของเขาเกี่ยวกับ Excel ช่วยให้นักเรียนและผู้เชี่ยวชาญหลายพันคนทั่วโลกพัฒนาทักษะและความเป็นเลิศในอาชีพการงาน ฮิวจ์แบ่งปันความรู้ของเขากับคนทั้งโลกผ่านบล็อก โดยเสนอบทช่วยสอน Excel ฟรีและการฝึกอบรมออนไลน์เพื่อช่วยให้บุคคลและธุรกิจบรรลุศักยภาพสูงสุดของตนเอง