Concatenando colunas no excel

0

Precisa de ajuda para concatenar as colunas 1 e 2, conforme visto na captura de tela.

Haverámaisentradasnacoluna2,talvez"Azul". Eu gostaria de '1 Blue' '2 Blue' '3 Blue', etc começando por baixo da entrada '6 Indigo'.

Espero que isso faça sentido! Muito novo para o Excel, e precisa resolver isso em breve.

EDIT: Eu preciso combinar toda a coluna A com toda a coluna B.

    
por mj_s 04.07.2014 / 06:21

2 respostas

0

Na célula C2, você pode inserir a fórmula abaixo e preencher a fórmula até C13 (ou qualquer outra coisa).

=OFFSET($A$2,MOD(ROW()-2,COUNTA(A:A)-1),0)&" "&OFFSET($B$2,INT((ROW()-2)/(COUNTA(A:A)-1)),0)

Explicação:

A primeira parte OFFSET($A$2,MOD(ROW()-2,COUNTA(A:A)-1),0) procura a célula apropriada da coluna A. COUNTA(A:A)-1 conta o número de itens na coluna A (menos um para o cabeçalho, ou seja, Linha 1). MOD(ROW()-2,COUNTA(A:A)-1) calcula o restante quando a linha atual (C2 ... C13) é dividida pelo número de itens na coluna A. Esse valor aparece como (0,1,2,3,4,5,0,1,2 , 3,4,5) em células (C2 ... C13); compensar esses valores para referência $A$2 retorna a linha correta na coluna A.

&" "& insere um espaço entre eles.

A segunda parte OFFSET($B$2,INT((ROW()-2)/(COUNTA(A:A)-1)),0) é semelhante à primeira parte. No entanto, calcula o quociente em vez do restante. Valores relevantes para (C2..C13) seriam (0,0,0,0,0,0,1,1,1,1,1,1). Compensando estes para referência $B$2 retorna "Violeta" ou "Indigo" ou qualquer texto que segue.

    
por 04.07.2014 / 09:56
0

A única maneira de concluir isso seria escrever um script VBA (Visual Basic for Applications), que é a linguagem de programação por trás das macros no Excel.

A lógica por trás dele (desculpe, eu não sei o código fora da minha cabeça) seria:

x = 0 
ForEach entry in column a
    ForEach entry in column b
         Set value of cell c1 + x
         x + 1
    
por 04.07.2014 / 07:00