Notifications
Clear all

Utilizando Procv e ProcH para relacionar pessoa a item

6 Posts
1 Usuários
0 Reactions
968 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde,

Este é meu primeiro post aqui então me corrijam se estou falando mt besteira.
Tenho uma planilha com 2 tabelas:
Na tabela 1 apenas com colunas A e B;
Coluna A com um indice numérico referente a uma pessoa.
Coluna B com um item relacionado à pessoa na coluna A.
* Cada pessoa pode ter 1 ou mais itens.
** Existem aproximadamente 150 pessoas e um total de 600 relações entre pessoas e itens.

Na tabela 2 -
eu gostaria de manter os indices na coluna A e os itens na linha 1, então fazer a relação com SIM ou NÃO (pode ser 1 e 0 tbm).
No caso o "SIM" sendo "existe a relação" e o "NÃO" sendo "não existe relação".

Vocês saberiam me ajudar ? Mandei um exemplo pequeno.

Muito obrigado.

 
Postado : 27/04/2012 9:50 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Prezado gallo, Boa Tarde.

Utilize a função SOMARPRODUTO que a resposta vem rápida e com fórmula simples.

Coloque na Plan2, B2 a fórmula:
=SE(SOMARPRODUTO((Plan1!$A$2:$A$31=$A3)*(Plan1!$B$2:$B$31=B$1))>0;"SIM";"NÃO")

É só arrastar a fórmula para as outras células.
CLARO, lembre-se de adaptar as indicações de células para a sua realidade.

Ela soma indexadamente quantas vezes a combinação de linha e coluna existem.
Se existirem 1 ou mais é porque existe a relação.
Se for mais de 1 é porque existem no mínimo duas linhas em que, por exemplo, Índice de pessoa 1 está com Abacaxi.
Se a resposta for zero(0) é porque não existe nenhuma relação entre Índice de pessoa 1 com Abacaxi, por exemplo.

Espero ter ajudado.

 
Postado : 27/04/2012 10:44 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Prezado gallo, Boa Tarde.

Utilize a função SOMARPRODUTO que a resposta vem rápida e com fórmula simples.

Coloque na Plan2, B2 a fórmula:
=SE(SOMARPRODUTO((Plan1!$A$2:$A$31=$A3)*(Plan1!$B$2:$B$31=B$1))>0;"SIM";"NÃO")

É só arrastar a fórmula para as outras células.
CLARO, lembre-se de adaptar as indicações de células para a sua realidade.

Ela soma indexadamente quantas vezes a combinação de linha e coluna existem.
Se existirem 1 ou mais é porque existe a relação.
Se for mais de 1 é porque existem no mínimo duas linhas em que, por exemplo, Índice de pessoa 1 está com Abacaxi.
Se a resposta for zero(0) é porque não existe nenhuma relação entre Índice de pessoa 1 com Abacaxi, por exemplo.

Espero ter ajudado.

Olá Mazzaropi,

no caso é certeza que uma pessoa só vai estar relacionada a um item uma vez, sem repetir.
Eu apenas preciso checar qual pessoa tem relação com qual item, sem quantidade mesmo.

O código que me mandaste está dando NÃO para 1 abacaxi , por exemplo mas deveria ser sim.
O NÃO é padrão até que exista 1 e Abacaxi na mesma linha, e existe.

Adicionei uns comentários e cores ao exemplo, pra facilitar a compreensão.

Muito, obrigado pelo empenho.

 
Postado : 27/04/2012 11:35 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde gallo

A fórmula do Mazzaropi esta correta, apenas vc tem que mudar a célula inicial da fórmula. Ele digiou A3 e a tua planilha começa na A2.
Coisa bem simples de visualizar.
Pintei de vermelho o que vc tem que mudar:

=SE(SOMARPRODUTO((Plan1!$A$2:$A$31=$A2)*(Plan1!$B$2:$B$31=B$1))>0;"SIM";"NÃO")

Altere a fórmula da célula B2 e arraste para as demais células.

Dê retorno.

Um abraço.

 
Postado : 27/04/2012 12:23 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde gallo

A fórmula do Mazzaropi esta correta, apenas vc tem que mudar a célula inicial da fórmula. Ele digiou A3 e a tua planilha começa na A2.
Coisa bem simples de visualizar.
Pintei de vermelho o que vc tem que mudar:

=SE(SOMARPRODUTO((Plan1!$A$2:$A$31=$A2)*(Plan1!$B$2:$B$31=B$1))>0;"SIM";"NÃO")

Altere a fórmula da célula B2 e arraste para as demais células.

Dê retorno.

Um abraço.

Olá Patropi,

Eu apliquei ao exemplo e funcionou perfeitamente, demorei um pouco para entender e aplicar a fórmula à minha necessidade, mas agora está funcionando perfeitamente.

Muito obrigado, e ao Mazzaropi também !!

 
Postado : 27/04/2012 1:57 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Gallo

Que bom que a tua dúvida foi resolvida.

Como a resposta do Mazzaropi estava correta, para agradecer a ele, clique na mãozinha que fica ao lado da ferramenta Citar.

Veja instrução de como agradecer e marcar o tópico como resolvido:
viewtopic.php?f=5&t=2394

Um abraço.

 
Postado : 27/04/2012 3:28 pm