Fórmula de Excel - ajuda

tiagopassos

Power Member
Boas,

O problema é o seguinte:

Tenho a seguinte tabela numa folha excel:

Marca -- Modelo -- Código
VW ---- Polo ------ A15
VW ---- Golf ------ A16
Fiat ---- 600 ------ B20

Pretendia uma fórmula que ao preencher a Marca e o Modelo me desse o código correspondente.

Marca: VW
Modelo: Golf

--> Código: A16

Espero ter sido claro na exposição do problema. Precisava mesmo de alguma ajuda.

Desde já obrigado
 
Última edição:
Tive a experimentar e a função procv() é melhor

fica algo assim =procv("valor a procurar";"tabela";"indice da coluna")
 
Última edição:
coluna A - marcas
coluna B - modelos

coluna C- =CONCATENAR(G5;H5)
coluna G- =SE(A5="vw";"a";SE(A5="fiat";"b";SE(A5="fiat";"c")))
coluna H- =SE(B5="polo";"15";SE(B5="golf";"16";SE(B5=600;"20")))

è um bocado martelado mas funciona, depois de perceberes a logica é ires acrescentando as marcas e modelos e referencias, nos modelos em que sao apenas numero nao colocar as aspas.
 
----A----- B ------C
1 Marca Modelo Codigo
2 vw ---polo ----a10
3 vw ---golg ----a25
4 vw ---vento ---a30
5 ford ---fiesta --f10
6 ford ---escort-- f11
7 fiat--- bravo ---d40
8 fiat ---brava ---d50
9 fiat ----600 ----d60
10 renault -clio ----r10


supoe que tens na celula F12 a marca; na celula F13 o modelo e queres preencher automaticamente o codigo na celula F14
A formula vai ficar assim: =PROCV(F13;B1:C10;2;0)

onde F13 é o modelo que procuras (a marca não interessa, pois um modelo só pode pertencer a uma marca especifica, por exemplo, clio só a renault é que tem o clio, Bravo só a Fiat é que tem esse modelo, entendes?)

B1:C10 é a tabela que vai deixar de fora as marcas pela razão que te expliquei, alem disso a formula começa a procurar no primeiro elemento da matriz, como o primeiro elemento são as marcas, vamos dizer que o primeiro elemento começa nos modelos;

o 2 é o índice da coluna de onde queres retirar os valores.

Espero que tenhas compreendido.
 
coluna A - marcas
coluna B - modelos

coluna C- =CONCATENAR(G5;H5)
coluna G- =SE(A5="vw";"a";SE(A5="fiat";"b";SE(A5="fiat";"c") ))
coluna H- =SE(B5="polo";"15";SE(B5="golf";"16";SE(B5=600;"20 ")))

è um bocado martelado mas funciona, depois de perceberes a logica é ires acrescentando as marcas e modelos e referencias, nos modelos em que sao apenas numero nao colocar as aspas.

No meu caso tenho demasiadas linhas para estar a fazer fórmulas para cada célula. Mas parece-me que esta fórmula funciona bem para poucas linhas de busca. ;)






----A----- B ------C
1 Marca Modelo Codigo
2 vw ---polo ----a10
3 vw ---golg ----a25
4 vw ---vento ---a30
5 ford ---fiesta --f10
6 ford ---escort-- f11
7 fiat--- bravo ---d40
8 fiat ---brava ---d50
9 fiat ----600 ----d60
10 renault -clio ----r10


supoe que tens na celula F12 a marca; na celula F13 o modelo e queres preencher automaticamente o codigo na celula F14
A formula vai ficar assim: =PROCV(F13;B1:C10;2;0)

onde F13 é o modelo que procuras (a marca não interessa, pois um modelo só pode pertencer a uma marca especifica, por exemplo, clio só a renault é que tem o clio, Bravo só a Fiat é que tem esse modelo, entendes?)

B1:C10 é a tabela que vai deixar de fora as marcas pela razão que te expliquei, alem disso a formula começa a procurar no primeiro elemento da matriz, como o primeiro elemento são as marcas, vamos dizer que o primeiro elemento começa nos modelos;

o 2 é o índice da coluna de onde queres retirar os valores.

Espero que tenhas compreendido.


Hugus, de facto a fórmula é perfeita no caso de o modelo não se repetir.

Mas imagina que em vez de "Modelo" tens "Côr", e que esta se pode repetir entre marcas.

Marca --- Cor ----- Código
VW ----- Azul ----- 001
VW ----- Vermelho -002
Fiat ---- Azul ------003
Fiat ---- Vermelho-- 045

Marca: VW
Cor: Vermelho
Código >>>>>> 002

Neste caso, sabes que fórmula utlizar?

Obrigado
 
-----A-------B---------C
1---Marca....Cor........Codigo
2----vw----azul--------a1
3----vw----vermelho---a2
4----fiat----azul--------a3
5----fiat----vermelho.....a4


supõeque tens na célula E7 a marca; na célula E8 a cor e queres preencher automaticamente o codigo na celula E9
A formula vai ficar assim na célula E9: =ÍNDICE(C2:C5;CORRESP(E7&E8;A2:A5&B2:B5;0))

Agora uma coisa muito importante, sem a qual a formula não funciona, depois de teres a formula escrita vai-te dar um erro #Valor! fazes o seguinte, seleciona a celula que tem a fórmula e carregas no F2 (has-de reparar que a tabela e as celulas E7 e E8 ficaram seleccionadas), depois carregas simultaneamente na tecla Ctrl Shift Enter e has-de reparar que a formula ficou assim {=ÍNDICE(C2:C5;CORRESP(E7&E8;A2:A5&B2:B5;0))} isto significa que é uma fórmula de matriz, para trabalhar com matrizes.

Também funciona com a formula procv() utilizando +/- a mesma notação, só que ainda não descobri onde estou a falhar.

Qualquer coisa que não perceberes diz.
 
Back
Topo