Index ที่ใช้นี้เป็นแบบ Index(array,row_num) แปลว่าจากข้อมูลใน array ให้นำข้อมูลลำดับที่ row_num มาแสดง
row_num ในที่นี้คือ SMALL(IF(ฐานข้อมูล!$A$4:$A$10=$A3,ROW(ฐานข้อมูล!$A$4:$A$10)-ROW(ฐานข้อมูล!$A$4)+1),COLUMNS($B3:B3)) นั่นเอง
Small(array,k) หมายถึง จากข้อมูล array ให้นำค่าที่น้อยที่สุดในลำดับที่ k มาแสดง เทียบกับสูตรข้างต้นจะได้ว่า จาก IF(ฐานข้อมูล!$A$4:$A$10=$A3,ROW(ฐานข้อมูล!$A$4:$A$10)-ROW(ฐานข้อมูล!$A$4)+1) ให้นำค่าที่น้อยที่สุดในลำดับที่ COLUMNS($B3:B3) มาแสดง
จากสูตร IF(ฐานข้อมูล!$A$4:$A$10=$A3,ROW(ฐานข้อมูล!$A$4:$A$10)-ROW(ฐานข้อมูล!$A$4)+1) หมายถึง หาก ฐานข้อมูล!$A$4:$A$10=$A3 เป็นจริงแล้วให้แสดงผลลัพธ์ของ ROW(ฐานข้อมูล!$A$4:$A$10)-ROW(ฐานข้อมูล!$A$4)+1
จากสูตร ROW(ฐานข้อมูล!$A$4:$A$10)-ROW(ฐานข้อมูล!$A$4)+1 หมายถึง ให้แสดงค่าลำดับโดยเริ่มจากเลข 1 เป็นต้นไปจนเท่ากับขนาดของจำนวนบรรทัดในช่วง ฐานข้อมูล!$A$4:$A$10 จะได้ผลลัพธ์เป็นเช่น {1,2,3,4,5,6,7}
ภาพรวมสูตรจะได้เป็นเช่น Small(If({True,True,False,True,False,False,False},{1,2,3,4,5,6,7}),COLUMNS($B3:B3))
ด้านหน้าที่เป็น True จะนำค่าตัวเลขด้านหลังมาแสดง จะได้เป็นเช่น Small({1,2,False,4,False,False,False},COLUMNS($B3:B3))
เนื่องจาก COLUMNS($B3:B3) คือจำนวนคอลัมน์ในช่วง $B3:B3 ผลลัพธ์คือ 1 คอลัมน์ ภาพสูตรจะได้เป็นเช่น Small({1,2,False,4,False,False,False},1) หมายถึงจากช่วง {1,2,False,4,False,False,False} ให้นำค่าที่น้อยสุดในลำดับที่ 1 มาแสดง ผลลัพธ์จะได้เป็น 1
และเมื่อนำผลลัพธ์นี้ส่งต่อไปยัง Index ภาพรวมของสูตรจะได้เป็น Index(array,1) หมายถึงจาก array ให้นำลำดับที่ 1 มาแสดง