O problema é que você está basiing sua referência para o pai puramente na posição usando uma fórmula simples. O que você precisa fazer é ajustar a Tabela 2 para que use um ponteiro para o valor adequado na Tabela 1.
A B C D
1 Id Price Parent Parent Price
2 2001 50.00 1001 =VLOOKUP(C1, Sheet1!$A$1:$B$30, 2, FALSE)
3 2002 2.81 1002 =VLOOKUP(C2, Sheet1!$A$1:$B$30, 2, FALSE)
4 2003 12.00 1003 =VLOOKUP(C3, Sheet1!$A$1:$B$30, 2, FALSE)
A função VLOOKUP
usa três parâmetros. O primeiro é o valor que você procura. O segundo é o intervalo que contém os dados, de modo que a primeira coluna contenha os valores que serão usados para correspondência. O último argumento é a coluna nesse intervalo que deve ser retornada. Por exemplo, a primeira fórmula está indo para Sheet1! $ A $ 1: $ B $ 30 (assumindo Tabela 1 está na Planilha1 nas células A1 a B30) e na primeira coluna procurando o valor 1001. Quando ele o encontra, ele retorna a segunda coluna nesse intervalo. O $
diz ao sistema para usar referências Absolute para que, quando você copiar suas fórmulas na Tabela 2, esse intervalo não seja alterado.
Dessa forma, não importa como você reordenar a Tabela 1, as fórmulas continuarão buscando um valor específico nesse intervalo.