Notifications
Clear all

Cruzamento de listas

6 Posts
2 Usuários
0 Reactions
1,547 Visualizações
(@junioragp)
Posts: 4
New Member
Topic starter
 

Pessoal, sou novo no fórum e comecei a “programar” a pouco tempo. Gostaria de uma ajuda com o seguinte problema:

Tenho 2 planilhas, a lista de material do conjunto e o estoque. Gostaria de cruza-las para verificar quais conjuntos estaria completo.
Exemplo:

Lista de Material:
Conjunto | Material | QTD
Conjunto 1 | MAT1 | 1,5
Conjunto 1 | MAT2 | 1
Conjunto 1 | MAT3 | 2
Conjunto 2 | MAT2 | 1
Conjunto 2 | MAT4 | 5,7
Conjunto 2 | MAT6 | 2
Conjunto 3 | MAT7 | 4
Conjunto 3 | MAT6 | 3
Conjunto 3 | MAT3 | 5
Conjunto 3 | MAT1 | 2,7

Estoque:
Material | Estoque
MAT1 | 4,2
MAT2 | 2
MAT3 | 6
MAT4 | 5,7
MAT6 | 5
MAT7 | 4

O resultado seria assim

Lista de Material:
Conjunto | Material | QTD | Status | Obs:
Conjunto 1 | MAT1 | 1,5 | Completo |
Conjunto 1 | MAT2 | 1 | Completo |
Conjunto 1 | MAT3 | 2 | Completo |
Conjunto 2 | MAT2 | 1 | Completo |
Conjunto 2 | MAT4 | 5,7 | Completo |
Conjunto 2 | MAT6 | 2 | Completo |
Conjunto 3 | MAT7 | 4 | Não completo |
Conjunto 3 | MAT6 | 3 | Não completo |
Conjunto 3 | MAT3 | 5 | Não completo | Falta 1
Conjunto 3 | MAT1 | 2,7 | Não completo |

Estoque:
Material | Estoque | Mat Utilizado | Saldo
MAT1 | 4,2 | 1,5 | 2,7
MAT2 | 2 | 2 | 0
MAT3 | 6 | 2 | 4
MAT4 | 5,7 | 5,7 | 0
MAT6 | 5 | 2 | 3
MAT7 | 4 | 0 | 4

Explicação: O macro verificou que todos os materiais do conjunto 1 tinha saldo, como teve os materiais ele colocou o status de completo diminuiu o material do estoque para atualizar o saldo, no conjunto 2 foi igual, porém no conjunto 3 ele não tinha saldo para o MAT 3 assim o status ficou com “Não completo” e a observação dos materiais que faltaram para completar o conjunto, neste caso ele não atualizou o estoque pois o conjunto não esta completo.

Obrigado.

 
Postado : 25/06/2013 9:27 am
(@finaljustice)
Posts: 91
Trusted Member
 

Olha sua explicação não foi clara, se você pudesse mandar uma planilha exemplo fica muito mais claro o que vc está tentando alcançar.
Com isso dito, fiz uma planilha com as informações que você providenciou e fiz basicamente o que você solicitou utilizando fórmulas, acredito que é possível você realizar o que está querendo sem utilizar VBA.

Espero ter ajudado,
Qualquer coisa so chamar.
att
FJ

 
Postado : 25/06/2013 4:17 pm
(@junioragp)
Posts: 4
New Member
Topic starter
 

Finaljustice,

Não é este o resultado que eu preciso, necessito saber de duas coisas.

1º Quais conjuntos eu tenho completo para enviar.
2º Qual os materiais que eu preciso para completar cada o conjunto.
-Se eu utilizar somando o total (como vc fez) eu tenho a necessidade de material total para completar todos os conjuntos. Mais tem conjunto que tem pendencia de somente 1 pç e outros que eu necessito de todas ou algumas. Sabendo a necessidade individual eu posso focar nos conjuntos que estão com menas pendencias e pedir para adiantar estes materiais para eu poder fechar o conjunto mais rapidamente e após fechar o conjunto enviar.

Hj eu faço com uma lógica parecida com a que vc fez, vou eliminando os conjuntos que não tem todos os materiais é um trabalho bem manual e são muitos conjuntos.

No anexo tenho a lista de material em uma guia e o estoque em outra coloquei uma explicação mais detalhada para melhor entendimento.

Muito obrigado pela atenção.

 
Postado : 26/06/2013 6:08 am
(@finaljustice)
Posts: 91
Trusted Member
 

Finaljustice,

Não é este o resultado que eu preciso, necessito saber de duas coisas.

1º Quais conjuntos eu tenho completo para enviar.
2º Qual os materiais que eu preciso para completar cada o conjunto.
-Se eu utilizar somando o total (como vc fez) eu tenho a necessidade de material total para completar todos os conjuntos. Mais tem conjunto que tem pendencia de somente 1 pç e outros que eu necessito de todas ou algumas. Sabendo a necessidade individual eu posso focar nos conjuntos que estão com menas pendencias e pedir para adiantar estes materiais para eu poder fechar o conjunto mais rapidamente e após fechar o conjunto enviar.

Hj eu faço com uma lógica parecida com a que vc fez, vou eliminando os conjuntos que não tem todos os materiais é um trabalho bem manual e são muitos conjuntos.

No anexo tenho a lista de material em uma guia e o estoque em outra coloquei uma explicação mais detalhada para melhor entendimento.

Muito obrigado pela atenção.

Ok,
Só para eu me situar, qual seu nível de conhecimento de VBA?

Abri aqui o seu arquivo para analisar, agora com as explicações ficou um pouco mais claro embora quero saber o seguinte. A sequencia "Conjunto 1", "Conjunto 2", "Conjunto 3"e por último "Conjunto 4" é sempre seguida? Isso está com cara de Plan de Eng. Civil (Sou Eng. Materiais).

Outra coisa que não ficou claro para mim é: (pensando em sequencia então vou descendo a tabela e fazendo os calculos)

Pegando o MAT 1 como exemplo;
você terá 1,5 no conj 1 (e como tem no estoque então pode dar baixa)
No Conj 3 você necessita de 2,7 (se eu ja dei baixa do conj 1 de 1,5 entao o estoque para o MAT1 fica = 5,2 -1,5 = 3,7 Na hora que estou analisando o Conj3, logo se o conj3 necessita de 2,7 ainda tenha MAT1 para isso... logo posso dar ele como "Completo").

Agora indo analisar o último conjunto, conjunto 4:
Meu ESTOQUE de MAT1 = 1 agora (Comecei com 5,2 - 1,5 (Conj1) - 2,7 (Conj3) = 1)
chegando aqui, o Conj4 requer 2,7 de MAT1 e tenho somente MAT1 = 1 então esse não pode ser completo. Certo?

Pode parecer besteira ou óbvio, mas é que em sua planilha você fez ao contrário. Você deu preferência para a analise do CONJ4 antes de olhar o CONJ3, isso teve uma razão? Pois se for programar para fazer esse procedimento é necessário que você leve essas variáveis em consideração... (isso irá complicar seu código, e dificultará se você está começando a mexer em VBA).

Caso esse "erro" foi sem perceber, não tem problema fazer esse código não deve ser dificil, mas te aviso em antecipadamente que aqui ajudamos e tiramos dúvidas você terá que fazer sozinho essa programação, iremos (eu pelo menos) te ajudar da melhor maneira possível mas fazer para você, eu pelo meno não farei, mas te darei toda a ajuda que precisar.

Então vamos lá. Se você faz engenharia aprendeu C++ básico e o que você pretende fazer irá usar IF's.

Você tentou alguma coisa? Se tiver já poste aqui. Caso contrário, pense nessa estrutura que te passei descendo a tabela e fazendo as perguntas IFs... q te ajudo.

Posso demorar para te responder (1,2 dias) mas é pq estou ocupado um projeto que está quase no fim... mas fique tranquilo que te respondo assim que der.

 
Postado : 28/06/2013 2:51 pm
(@junioragp)
Posts: 4
New Member
Topic starter
 

Muito obrigado pela ajuda Finaljustice, demorei a responder pois fiquei testando as lógicas porem sem sucesso.

Eu gostaria de uma ajuda para montar, meu maior problema é a lógica e quais comandos utilizar. Se eu souber isso acho que consigo desenvolver sem problemas. Apesar de ser iniciante.

Se vc puder me ajudar com a lógica eu agradeço muito. Na verdade eu que quero desenvolver. Minha ideia não é pegar a macro pronta.
É mais didático do que usual “A pesar de me ajudar bastante”.

Apartir deste programinha poderei criar outros que tenho em mente que contem a mesma lógica.

Eu estava pensando no seguinte...

1º Conjunto
Se 1º MAT tem no estoque
ok
se não
falta
Se 2º MAT tem no estoque
ok
se não
falta
Se 3º MAT tem no estoque
ok
se não
falta
(a quantidade de material por conjunto não é padrão acho que o comando correto seria While)
Se todo Conjunto estiver ok
Dar baixa no estoque e marcar “Completo”
Se não
Marcar “Não completo”
Próximo conjunto

 
Postado : 08/07/2013 5:22 am
(@junioragp)
Posts: 4
New Member
Topic starter
 

Resolvido!

Fiz uma sequencia de Do While com o Find no estoque e fui atualizando as células!

Obrigado!

 
Postado : 05/08/2013 8:16 am