Notifications
Clear all

Melhoria de código VBA

11 Posts
3 Usuários
0 Reactions
1,931 Visualizações
(@luan_hca)
Posts: 0
New Member
Topic starter
 

Olá, venho pedindo algumas ajudas com uma planilha aqui no fórum, e graças ajuda de muito usuários ela está em fase final, agradeço desde ja.

Porem estou com um outro problema, criei uma planilha Recibo para adicionar produtos do estoque ao digitar um código nele cadastrado, ela puxa o produto, entro com a quantidade e com isso ela calcula valores e tal, e após clicar no botão criado imprimir ele gera um arquivo desse recibo em pdf e salva, e os produtos que encontravam-se no recibo vão direto para a planilha Caixa, com cód, descrição, valor e quantidade de cada. Porém esse recibo ficou limitado a apenas 30 produtos. Ou seja, gostaria que pudesse adicionar linhas quando precisar, pois se caso houver uma venda de mais de 30 produtos, me sugeriram formatar a área que vão os produtos como tabela, com isso ao final teclasse tab e iria adicionando linha com a fórmulas existentes tudo certinho, se fosse só o recibo isso resolveria o meu problema, porém na verdade eu precisaria que o caixa puxasse todos os produtos que eu adicionasse, independente de ser 30 ou 80, não posso configurar com uma quantidade maior de linhas ja, pois queria evitar desperdício de papel, por isso com 30 linhas ele estara exatamente configurado em uma única folha, porém se precisar eu adicionaria as linhas e gastaria apenas o necessário, e o caixa puxaria como ja faz com as 30 padrão.
Enfim meu problema é o caixa puxar os produtos como já faz, porém se caso precisar adicionar mais linhas para mais produtos ele puxaria também, e após realizar o salvamento e os produtos irem para o caixa, o recibo voltava ao seu padrão que era de 30 linhas.
Estou anexando mais uma vez a planilha, se alguém puder me ajudar estarei muito agradecido.

 
Postado : 27/01/2017 8:48 am
(@leandroxtr)
Posts: 0
New Member
 

Quando chegar no final da planilha, ao dar um "Tab", vai adicionando linhas.

veja se te atende!

 
Postado : 27/01/2017 8:56 am
(@luan_hca)
Posts: 0
New Member
Topic starter
 

Boa Tarde Leandro,

Obrigado pela ajuda, mas ainda não é a solução que preciso, converter os campos onde ficará o produto em tabelas soluciona o problema de adicionar as linhas, porém após salvar com o botão imprimir, o caixa puxa apenas da linhas 12 a 42 do recibo, e as que foram criadas ainda não.

Aguardo, obrigado desde já

 
Postado : 27/01/2017 10:34 am
(@djunqueira)
Posts: 0
New Member
 

Veja no vídeo do Youtube como vc faz p/ apagar alinha de uma tabela nomeada.

https://www.youtube.com/watch?v=cLtEhJsbVnE&feature=youtu.be

 
Postado : 27/01/2017 10:41 am
(@luan_hca)
Posts: 0
New Member
Topic starter
 

Boa Tarde DJunqueira,

Obrigado pela ajuda e pelo vídeo, porém meu principal problema ainda não é adicionar e apagar as linhas do recibo, e sim fazer com que após clicar no botão em preto "imprimir", a planilha caixa receba alem das linhas 12 a 42 que é o tamanho padrão e que já faz essa ação, mas também as que serão adicionadas.

Aguardo. Obrigado

 
Postado : 27/01/2017 11:36 am
(@djunqueira)
Posts: 0
New Member
 

Isso é fácil, use as propriedades da tabela nomeada...

 
Postado : 27/01/2017 12:45 pm
(@djunqueira)
Posts: 0
New Member
 

Código genérico p/ adicionar dados na linha final da tabela:

ActiveSheet.ListObjects("Table1").ListRows.Add AlwaysInsert:= True

Veja mais em:
https://www.thespreadsheetguru.com/blog/2014/6/20/the-vba-guide-to-listobject-excel-tables

 
Postado : 27/01/2017 1:03 pm
(@luan_hca)
Posts: 0
New Member
Topic starter
 

DJunqueira,

Possuo a tabela anexada neste post, você poderia me ajudar com isso?
Sou principiante em VBA, se puder me ajudar, pois eu não entendi como usar as propriedades para fazer a planilha do caixa receber os produtos do recibo.

 
Postado : 27/01/2017 3:42 pm
(@djunqueira)
Posts: 0
New Member
 

Montei o código, tudo bem simples, mas faz uso intensivo de tabelas nomeadas.
A forma mais avançada de se utilizar o Excel é com tabelas nomeadas, não retorne p/ o passado.

Se tiver avançado além da linha 42 com os itens do recibo o código irá apagar as novas linhas e retornar ao estado original.

 
Postado : 28/01/2017 9:09 am
(@luan_hca)
Posts: 0
New Member
Topic starter
 

Bom Dia, obrigado pela ajuda, sua resposta já resolveria parcialmente meu problema,
A questão é que na hora de imprimir o "recibo", além dele gerar um pdf e salvar, os produtos desse recibo é mandado ao caixa,
porém ainda não acontece com os produtos que estão na linhas adicionadas, 43, 44, 45, etc. Se o caixa receber todos os produtos que estão no recibo, da linha 12 até a última adicionada, já estaria solucionado meu problema.
Só falta isso, se puder me ajudar, Muito obrigado.

 
Postado : 30/01/2017 4:29 am
(@djunqueira)
Posts: 0
New Member
 

Bom dia Luan, vc poderia me repassar duas informações, qual a versão do seu Excel e uma descrição das etapas q o código do Módulo1 deveria fazer?

 
Postado : 30/01/2017 6:03 am