Encontrando a linha de uma matriz resultado da função MIN ()?

1

Eu tenho duas tabelas de valores com o mesmo formato. Uma tabela é a tabela "Mestre", a outra é uma tabela "Histórico". Cada linha é um registro distinto. Eu estou tentando determinar quais (se houver) registros ocorrem na tabela de histórico que não aparecem na tabela mestre.

As tabelas são conjuntos de furos de mineração. Cada furo possui um ID, coordenadas x e y e dois campos angulares para descrever sua orientação.

Normalmente, isso seria um exercício fácil, pois eu poderia verificar se todos os IDs de furos encontrados no conjunto de dados históricos também foram encontrados no conjunto de dados principal.

O problema é que alguns furos foram renomeados entre então e agora. Minha próxima opção seria encontrar coordenadas correspondentes. O problema é que as coordenadas de um determinado furo podem variar em alguns metros entre o momento atual e o atual.

Até agora, eu configurei uma função que pegará cada buraco na tabela "Histórico" e encontrará a distância até o buraco mais próximo na tabela "Mestre". Esta função é a seguinte:

{= MIN (SQRT ((('Histórico'! D4 - ('Mestre'! $ C $ 3: $ C $ 2419)) ^ 2 + ('Histórico'! E4 - ('Mestre'! $ D $ 3: $ D $ 2419)) ^ 2)))}

Esta função de matriz examina cada furo no conjunto de dados históricos (linha 4 neste exemplo), obtém sua coordenada x (coluna D) e sua coordenada y (coluna E) e executa um cálculo do teorema de Pitágoras usando cada par de coordenadas a aba Master. Em conjunto com a função MIN (), encontrará a distância mínima em linha reta para uma coordenada na tabela mestre.

A minha pergunta é: como posso descobrir qual linha na tabela mestre gerou as coordenadas de distância mínima? O valor mínimo retornado é um valor calculado usando valores na linha de destino, portanto, não posso procurá-lo diretamente.

Espero que a pergunta seja clara e forneça contexto suficiente.

    
por Delbaeth 15.02.2016 / 18:43

1 resposta

0

Você usaria MATCH :

=MATCH(MIN(SQRT((Historical!D4-Master!$C$4:$C$2420)^2+(Historical!E4-Master!$D$4:$D$2420)^2)),SQRT((Historical!D4-Master!$C$4:$C$2420)^2+(Historical!E4-Master!$D$4:$D$2420)^2),0)

(Eu removi alguns parênteses estranhos da sua construção.)

Obviamente, o acima ainda requer um commit como array formula .

Atenciosamente

    
por 16.02.2016 / 11:04