Excel: Anexa a tabela a outra onde as colunas são as mesmas, mas as linhas diferem

0

Eu tenho lutado por horas para anexar uma tabela a outra no Excel. Eu tentei 1000 variações do VLOOKUP mas não funcionou. As colunas (métricas) são as mesmas para todas as minhas tabelas, mas as linhas diferem (os membros desistiram). Quero acrescentar as novas colunas à tabela antiga e obter uma tabela ampla para todos os anos.

Tabela 1 (2017)

|member|revenue|sales|profit|
|   1  |  10   |  20 |  10  |
|   2  |  10   |  20 |  10  |
|   3  |  10   |  20 |  10  |
|   4  |  10   |  20 |  10  |
|   5  |  10   |  20 |  10  |
|   6  |  10   |  20 |  10  |
|   7  |  10   |  20 |  10  |

Tabela 2 (2018, alguns membros desistiram)

|member|revenue|sales|profit|
|   1  |  40   |  60 |  80  |
|   3  |  40   |  60 |  80  |
|   4  |  40   |  60 |  80  |
|   6  |  40   |  60 |  80  |
|   7  |  40   |  60 |  80  |

Resultado: Anexar todas as colunas da Tabela 2 à tabela 1

2017                         2018
|member|revenue|sales|profit|revenue|sales|profit|
|   1  |  10   |  20 |  10  |  40   |  60 |  80  |
|   2  |  10   |  20 |  10  |  NA   |  NA |  NA  |
|   3  |  10   |  20 |  10  |  40   |  60 |  80  |
|   4  |  10   |  20 |  10  |  40   |  60 |  80  |
|   5  |  10   |  20 |  10  |  NA   |  NA |  NA  |
|   6  |  10   |  20 |  10  |  40   |  60 |  80  |
|   7  |  10   |  20 |  10  |  40   |  60 |  80  |
    
por Largo Terranova 20.08.2018 / 11:26

2 respostas

0

N.B.

EscrevaestafórmuladematrizemCellE218fillrightepressioneF2&terminecomCtrl+Shift+Enter.Emseguida,preencha-oparaobterosresultados.

{=IFERROR(VLOOKUP(A218,$A$210:$D$215,{2,3,4},FALSE),"No Match")}

Como funciona:

  • {2,3,4} lê as Colunas 2 a 4 em ordem de constantes de matriz , que são frequentemente usado em fórmulas de matriz para manipular vários valores de uma só vez, em vez de um único valor.
  • Ajustar referências de célula na fórmula conforme necessário.
  • Você pode substituir No Match por blanks .
por 20.08.2018 / 13:14
0

A solução proposta pelo @Rajesh S deve funcionar. Você terá que primeiro selecionar todas as três células aplicáveis em uma linha e, em seguida, inserir a fórmula da matriz na barra de fórmulas. Desta forma, {2,3,4} a partir da fórmula do array, espalhe-se por 3 colunas em uma matriz horizontal.

Caso você não esteja confortável com o Array Formula e tenha apenas as duas tabelas, você pode simplesmente manipular COLUMN () - COLUMN (referência fixa duas colunas atrás) no VLOOKUP para gerar 2,3,4 apenas uma vez e você será capaz de juntar as duas tabelas.

Se você precisar empilhar mais tabelas uma abaixo da outra, por exemplo, no futuro você pode até mesmo adicionar 2019, 2020 e assim por diante um abaixo do outro, então você também pode considerar abaixo a solução.

Neste exemplo, a Tabela 1 está em $ A $ 3: $ D $ 9, Tabela 2 $ A $ 11: $ D $ 15 e Mesa3 $ A $ 17: $ D $ 21.

Por favor, use First Row como uma linha auxiliar e coloque as dimensões Cell1: Cell2 de suas respectivas tabelas exatamente na maneira como a fórmula do excel entende a referência de célula como por exemplo $ A $ 11: $ D $ 15

Agora coloque a seguinte fórmula no E3 e arraste-a para baixo e para baixo até as células pretendidas.

Suas mesas devem ser unidas uma ao lado da outra. No futuro, se você adicionar mais tabelas, basta colocar as respectivas dimensões na linha auxiliar, conforme aplicável.

A manipulação do número da coluna para gerar a sequência 2,3,4 para o VLOOKUP só funcionará se você iniciar sua fórmula na Coluna E. Se você começar em qualquer outra coluna, será necessária uma alteração de fórmula para gerar a sequência corretamente 2,3,4.

=IFERROR(VLOOKUP($A3,INDIRECT(E$1),IF(MOD(COLUMN(),3)=0,3,IF(MOD(COLUMN(),3)=1,4,2)),FALSE),"NA")

    
por 21.08.2018 / 20:41