Portanto, um pouco diferente da maioria das questões de matriz de correspondência de índice
Eu tenho uma tabela de movimentos de A para B. Eu posso ter movimento Tipo 1, Tipo 2, Tipo 3 ou Tipo 4.
Cada um desses movimentos corresponde a um conjunto diferente de "Etapas de preenchimento". Estes seriam o Passo 1, o Passo 2 ou o Passo 3.
Esse relacionamento é capturado em uma tabela limpa, assim:
Step Type Relationship
Step 1 - Type 1 - 1
Step 2 - Type 1 - 0
Step 3 - Type 1 - 0
Step 1 - Type 2 - 1
Step 2 - Type 2 - 1
Step 3 - Type 2 - 0
Step 1 - Type 3 - 0
Step 2 - Type 3 - 0
Step 3 - Type 3 - 1
Step 1 - Type 4 - 1
Step 2 - Type 4 - 1
Step 3 - Type 4 - 1
Onde a 1 é "Sim, eles estão relacionados" e a 0 é "Não, eles não são".
Agora, há uma subetapa na tabela de passos, assim:
SubStep --- Step
1 1
2 1
3 1
4 1
5 1
6 1
7 2
8 2
9 2
10 3
11 3
12 3
Agora, tenho uma tabela de subetapas e quantas subetapas eu preciso fazer. Eu tenho uma tabela de movimentos e quantas unidades de movimentos estão sendo movidas de A para B. Estou tentando descobrir quantas unidades precisam ser adicionadas a cada subpasso.
Por exemplo:
Se eu tiver o tipo de movimento 1 para 100 unidades, precisarei adicionar 100 unidades à subetapa 1 a 6. Se eu tiver o tipo de movimento 2 para 200 unidades, precisarei adicionar outras 200 unidades ao subpasso 1-6, para um total de 300 unidades movidas e, em seguida, 200 unidades adicionadas às subetapas 7-9.
Eu descobri que um sumproduct é provavelmente a melhor maneira de fazer isso. Atualmente, a primeira parte é assim:
=SUMPRODUCT(UnitMovementWorksheetCurrent[Units],--(UnitMovementWorksheetCurrent[Month]=[@Month]),--(UnitMovementWorksheetCurrent[Year]=[@Year]),--(UnitMovementWorksheetCurrent[From]=[@[Lab Abbr]]),--(INDEX(MovementToStepLookup[Roll up Step],MATCH(UnitMovementWorksheetCurrent[Movement Type],MovementToStepLookup[Movement Number],0))=[@[Roll up Step]]))
No entanto, a parte que não está funcionando é a (INDEX(MovementToStepLookup[Roll up Step],MATCH(UnitMovementWorksheetCurrent[Movement Type],MovementToStepLookup[Movement Number],0))=[@[Roll up Step]]))
- eu esperaria obter uma matriz VERDADEIRA / FALSA, mas em vez disso, recebo um erro de #VALUE. O Index propriamente me dá o array, o Match gera apropriadamente um array, ao mesclar os dois (ao percorrer) ele só me dá um número como resultado, ao invés de um array de números, então ele está me dando (Por exemplo) { 1} = 1, então, um único VERDADEIRO.
Isso funciona quando estou percorrendo a fórmula, mas quando realço tudo para calcular, só me dá #VALUE. Então eu suponho que eu tenho duas perguntas (Realmente, a única questão é como obter meus dados, mas quebrando um pouco ...):
1) Como faço para que minha correspondência de índice retorne um resultado de matriz?
2) O que estou fazendo de errado na minha fórmula?