=IF(ISERROR(INDEX(Data!$A$1:$K$999,SMALL(IF(Data!$A$1:$K$999='Group P2 Grid'!$C$170,ROW(Data!$A$1:$K$999)),ROW(Data!$2:$999)),3)),"",INDEX(Data!$A$1:$K$999,SMALL(IF(Data!$A$1:$K$999='Group P2 Grid'!$C$170,ROW(Data!$A$1:$K$999)),ROW(Data!2:1003)),3))

Wherein if somebody enters a coded value (i.e., XH, XL, XM) into a column in the 'Data' sheet, the table should populate with the data in column 3 on the data sheet.

The formula was working previously, but it now no longer updates automatically. What do I need to do to get my table to populate with the results of the formula above? I am clearly very confused.

Thank you!