Ir ao conteúdo
  • Cadastre-se
LordMagno

VBA Excel - Sistema para conferência de mercadoria

Recommended Posts

Boa tarde galera,

 

Estou com uma duvida cruel no excel e acho que aqui alguém pode me ajudar.

 

Trabalho em uma loja de peças e acessórios para motos, e recebemos um grande volume de mercadoria toda semana dos fornecedores. Pensando em uma forma de agilizar o processo de conferência dessa mercadoria, criei uma planilha com alguns códigos em VBA e agora travei em uma parte que não encontro solução. Vou resumir o projeto, a ideia é simples, o conferente vai abrir a planilha e clicar no botão "Iniciar Conferência", onde vai abrir um UseForm com todas as colunas referente ao produto. Com um leitor de código de barras, ele vai bipar a mercadoria que chegou, o UseForm vai buscar em um banco de dados (Aba "ESTOQUE") aquele código de barras, e retornar todos os valores referente ao produto. Ao clicar no botão "Inserir", esses dados capturados vão para a aba "CONFERÊNCIA". E é aqui que entra a minha duvida, no caso criei a aba "CONFERÊNCIA" para que todos os produtos bipados pela leitora sejam listados aqui, mas gostaria que ao invés de apenas ir acrescentando um produto embaixo do outro, o excel verificasse se na aba "CONFERÊNCIA" já existe esse mesmo código de barras do produto, e caso já tenha, ele acrescente apenas +1 unidade na coluna "Quantidade", ao invés de ir repetindo os produtos.

Dessa forma, no final da conferência, o funcionário vai poder imprimir essa relação que ele fez no excel e confrontar com a quantidade que está na nota fiscal da compra.

 

Em anexo estou enviando a planilha até o ponto que parei. Vocês verão três abas nessa planilha: ESTOQUE = Banco de dados dos produtos, CONFERENCIA = Lista dos produtos conferidos e CONFERENCIA EXEMPLO = Como gostaria que os produtos fossem agrupados.

 

Espero que tenha sido bem claro na explicação, e se puderem comentar o código pra que eu possa compreender agradeço, valeu!

CONFERENCIA_MERCADORIA.zip

Compartilhar este post


Link para o post
Compartilhar em outros sites

joao.vieira, só uma sugestão quando se trata de banco de dados, o ideal ao invés de usar o excel para essa funcao, usar o access por exemplo, integrado, para evitar que voce perca algum dado por uso involuntario ou evitar a perda quando o excel fica corrompido o que é normal acontecer.

Bom mas vamos ao seu caso, eu nao entendi direito, voce disse [ ele acrescente apenas +1 unidade na coluna "Quantidade], mas tem um trecho no codigo para acrescentar 10, nesta coluna  [ ActiveCell.Offset(0, 7).Value = 10 ]  ?

Outra sugestão: o leitor de codigo de barras, normalmente vem configurado para apos ler o codigo, inserir o { Enter }, voce poderia aproveitar esse recurso e fazer tudo automatico, ou seja ao escanear, fazer as verificacoes e inserir as informçoes, sem que o usuario precise clicar no botao inserir, fica um trabalho mais ágil.

Veja o anexo eu usei a funcao "Find" para procurar o codigo na coluna "A" da aba Conferencia.

 

 

 

CONFERENCIA_MERCADORIA-v1.zip

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Simplesmente perfeito Basole! Meus parabéns, conseguiu resolver meus problemas em poucos minutos kkkkk

Sobre o banco de dados, eu importo direto do nosso sistema interno da loja, pelo Microsoft Query. Não sei se tem como o excel fazer essa pesquisa de código de barras direto nesse banco de dados da loja, pois por enquanto eu estou atualizando essa tabela pelo excel mesmo.

Dei uma limpada no código, pois como estava fazendo vários experimentos ficou cheio de coisa inútil, como esse [ ActiveCell.Offset(0, 7).Value = 10 ].

 

Você falou de deixar automatizado esse esquema do botão Inserir ao passar o código, minha ideia inicial era essa, pro pessoal só ir passando o código nos produtos sem apertar nada, mas travei antes de chegar nisso.

Estava tentando criar essa soma de quantidade primeiro pra depois automatizar o enter, mas já aproveitando você saberia qual é a linha de código pra isso? Tentei inserir tudo junto no [ Private Sub BoxCodBarras_AfterUpdate() ], pra quando atualizar a caixa BoxCodBarras, ele além de puxar as informações, também inseri-las em CONFERENCIA, mas não deu certo.

 

CONFERENCIA_MERCADORIA-v2.zip

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado joao.vieira pelos elogios a gente faz o que pode...

 

Se tiver acesso ao seu BD, fica fácil com comando sql o excel buscar as informações nele.

  

Segue em anexo, como o processo automatizado,

 

Ao invés do Evento AfterUpdate(), eu usei o _KeyDown no textBox do cod barras. 

 

E tambem eu desabilitei a propriedade .TabStop em todos os controles, exeto ao textbox cod. barras, para o foco se 'concentrar' apenas neste campo. 

 

Pra testar, se nao estiver c/ o scanner na mao, digite o cod barras 'manualmente' em seguida digite o  {Enter} .

 

Se interessar eu posso dar maozinha pra integrar o excel ao bd. 

 

abx. 

CONFERENCIA_MERCADORIA-v3.zip

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caramba, na mosca de novo! To de saída pra aula agora e daqui a pouco vou atualizar esse código na planilha que eu estou atualizando.

 

Eu fiz duas opções pro conferente com uma MultiPage. Uma aba com a tabela automática e outra manual, já que nem todos os produtos tem o código de barras cadastrado no sistema. Assim eles podem digitar o código de fabrica no lugar.

 

Com certeza vou querer sua ajuda pra integrar em tempo real com a base de dados na loja, se for possível. Assim eu não precisaria atualizar a base de dados da planilha, toda vez que houvesse alterações nos produtos da loja.

 

Novamente muito obrigado, daqui a pouco eu volto com a tabela atualizada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sem querer me intrometer na forma q vocês trabalham ai, mas já que voce esta criando tipo um espelho da NF, poderia ter a opção no form de inserir a quantidade de produtos  que vem na caixa (embalagem), o valor unitario (conf. pedido de compra)  do produto e ao final, a planilha ja calcula o total e compara com o total da NF, pois as vezes o vendedor que que emitiu o pedido se engana na hora de fechar o preço e ai voce cobra a dif. dele.

 

abx. 

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Basole, o dia hoje está corrido e não consegui parar pra fazer todas as alterações que pretendo, mas já fiz uma primeira versão pra teste lá na conferência. A galera que recebe a mercadoria piro na planilha kkkkkkkkk.

 

Gostei da sua ideia e já estou com mais mil e uma pra incrementar nessa planilha, e com certeza vou te chamar muito pra me dar uma força kkkkk. Daqui a pouco vou tentar dar uma atualizada nela e envio novamente pra você dar uma olhada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa é isso ai, vamos incrementar.... tem que aproveitar o maximo os recursos que temos prá facilitar nossa vida..

 

beleza. .fico no aguardo. 

 

abx.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×