Preencher a célula da tabela 1 a partir de uma célula preenchida automaticamente da tabela 2 com condições

Preencher a célula da tabela 1 a partir de uma célula preenchida automaticamente da tabela 2 com condições

No Excel 2010, TAB1 e TAB2 estão na mesma planilha.

Quero preencher a Coluna D da TAB1 de uma Coluna E da TAB2 preenchida automaticamente com base nos valores da Coluna C da TAB2.

TAB1 fica assim:

COLUMN C   COLUMN D  COLUMN E
1            
2
3
4
5
6
7
8

TAB2 fica assim

COLUMN C   COLUMN E (AUTOFILLED FROM COLUMNS F & G)
1           1205 Grandview Ave
1           1207 Grandview Ave
1           1209 Grandview Ave 
1           1211 Grandview Ave   
2           1500 W 1st Ave
2           1502 W 1st Ave 
2           1504 W 1st Ave 
3           1240 Oakland Ave

Tenho 144 ou 288 linhas em TAB1 e linhas menores em TAB2.

Como eu faço isso?

Responder1

Se entendi a pergunta corretamente, você está tentando fazer algo assim:

Mesa


Presumo que você queira obter a parte idêntica dos endereços em vez da string inteira, por exemplo, Grandview Aveem vez de 1205 Grandview Ave. Considerando os dados da sua amostra, isso pode ser feito simplesmente cortando tudo antes do primeiro espaço no valor da célula. Se não houver espaços, o valor da célula não será cortado.

=IFERROR(RIGHT(G3, LEN(G3) - LEN(LEFT(G3, FIND(" ", G3, 1)))), G3)
  • FIND(" ", G3, 1)encontra o primeiro espaço na célulaG3.
  • LEFT(G3, FIND())coloca tudo à esquerda do primeiro espaço.
  • LEN(LEFT())obtém o número de caracteres antes do primeiro espaço.
  • RIGHT(G3, LEN(G3) - LEN())coloca tudo à direita do primeiro espaço.
  • IFERROR(RIGHT(), G3)retorna o valor da célula se nenhum espaço for encontrado.

Depois de obter a string que queremos exibir, basta fazer um VLOOKUPpara encontrar o valor com o índice correto. A célula estará vazia se nenhuma correspondência for encontrada.

=IFERROR(VLOOKUP(B3,F:J,5,FALSE),"")
  • VLOOKUP(B3,F:J,5,FALSE)encontra o primeiro valor na quinta coluna do intervaloF:Jcom o valor da célulaB3encontrado na primeira coluna.
  • IFERROR(VLOOKUP(),"")retorna uma string vazia se nenhuma correspondência for encontrada.

Ambas as fórmulas são copiáveis.


Bônus ASe você não se importa em mostrar o número da primeira partida, você pode simplesmente usar:

=IFERROR(VLOOKUP(B3,F,G,2,FALSE),"")

Bônus BSe não quiser criar uma coluna de suporte, você pode combinar as duas fórmulas substituindo todas as aparências deG3na primeira fórmula com a fórmula encontrada no Bônus A, o que resulta na seguinte monstruosidade:

=IFERROR(RIGHT(IFERROR(VLOOKUP(B3,F:G,2,FALSE),""), LEN(IFERROR(VLOOKUP(B3,F:G,2,FALSE),"")) - LEN(LEFT(IFERROR(VLOOKUP(B3,F:G,2,FALSE),""), FIND(" ", IFERROR(VLOOKUP(B3,F:G,2,FALSE),""), 1)))), IFERROR(VLOOKUP(B3,F:G,2,FALSE),""))

Observe também que alguns países usam ;em vez de ,fórmulas.

informação relacionada