About Me
Com tecnologia do Blogger.
Seguidores
Estatisticas
2007-07-24
197: Excel - IF(), ISNA(), INDEX() & MATCH()
11:00 da tarde |
Publicada por
JRod - PORTUGAL |
Editar mensagem
Há dias, num newsgroup, colocaram a seguinte questão (adaptada): "Dado o elevado n.º de códigos postais, os mesmos têm de ser colocados em 2 colunas, com a devida correspondencia de localidade na coluna seguinte. Como fazer para, na mesma folha, e numa determinada célula, quando digitasse, por exemplo, 8125-421, noutra célula aparecer a localidade correspondente, ou seja, Vilamoura?"
Para uma possível solução e de modo a tornarmos a apresentação um pouco mais agradável (utilizando uma TextBox em vez de uma célula, para apresentar o resultado), tomemos, então, o seguinte exemplo:
O que se pretende será:
- Digitar o Código Postal em B10
- Pesquisar nas Colunas "E" e "G" pelo Código Postal
- Se existir, mostrar a cidade correspondente numa TextBox
No exemplo, a primeira acção a tomar, será criar a TextBox:
E, depois, para efectuar a pesquisa, por coluna, do Código Postal, digitar o seguinte, por exemplo em:
N5: =IF(ISNA(INDEX($F$3:$F$9;MATCH(B10;$E$3:$E$9;0)));"";INDEX($F$3:$F$9;MATCH(B10;$E$3:$E$9;0)))
e em N6: =IF(ISNA(INDEX($H$3:$H$9;MATCH (B10;$G$3:$G$9;0)));"";INDEX($H$3:$H$9;MATCH(B10;$G$3:$G$9;0)))
Para concatenar as duas células e obtermos o resultado apenas numa, digitaremos então,
em N8: =N5&N6
Voltando novamente à TextBox, podemos renomeá-la, no exemplo, para "Result" e, estando activa, digitar na Barra de Fórmula a referência à célula N8, para obtermos o resultado esperado:
Tópicos relacionados: