Encontrar células não vazias e procurar em linhas diferentes (dúvida Facebook)

Encontrar valores de células não vazias e procurar em linhas diferentes.

Resumo

Foi-nos colocada a seguinte questão na nossa Página de Facebook:

Boas Pessoal!
Preciso de ajuda em uma questão que me prende em exercícios.
É a seguinte:
Eu quero ir buscar os dados da pessoa á coluna B.
Mas os dados estão distribuídos por linhas abaixo do nome em vez de estarem á frente.
O que pretendo, é extrair a informação de uma pessoa para a mesma linha e em campos diferentes.
Deixo um exemplo final para melhor interpretação.


Problema

A questão colocada pode ser dividida em duas partes:

1. Na Coluna A encontrar a Variável ID excluíndo as células vazias
2. Extrair a informação Data (Name, Address e Code) a partir do ID; sendo que Address e Code estão em linhas diferentes do ID

1. Listar todos os ID (Coluna A) numa coluna nova (Coluna E) excluíndo as células vazias

Listar todos os ID
=SE.ERRO(ÍNDICE($A$1:$A$16;MENOR(SE(NÃO(É.CÉL.VAZIA($A$1:$A$16));LIN($A$1:$A$16);"");LIN(A2)));"")

2. Extrair as variáveis que estão em Data (Coluna B) e colocá-las de forma tabular nas colunas seguintes ao ID extraído (Colunas F, G, H)

2.1 Variável Name (Coluna F)

Variável Name
=ÍNDICE(B$6:$B$16;CORRESP($E2;$A$6:$A$16;0))

2.2 Variável Address (Coluna G)

Variável Address
=ÍNDICE($B$6:$B$16;CORRESP($F2;$B$6:$B$16;0)+1;1)

2.3 Variável Code (Coluna H)

Variável Code
=ÍNDICE($B$6:$B$16;CORRESP($F2;$B$6:$B$16;0)+2;1)

Descargas

Descarrega aqui o ficheiro com os exemplos para encontrar células não vazias e procurar em linhas diferentes