Notifications
Clear all

Copiar na linha de cima

16 Posts
1 Usuários
0 Reactions
3,042 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Pessoal boa tarde,

Acredito que o meu problema seja resolvido com VBA, é o seguinte:
Tenho um arquivo que puxo do EMS que vem em Excel, só que vem da seguinte maneira:
QTD Cód Descrição
160 4614 Budin Sabor Vainilla con Relleno sabor
Chocolate Blanco 6x15x30g
160 4615 Budin de Vainilla con Relleno sabor
Chocolate y Cobertura sabor Chocolate
6x15x38g
160 4616 Budin sabor Chocolate con Relleno y
Cobertura sabor Chocolate y Confites
Azucarados 6x15x38g
100 4662 Vainillas Cubiertas con Azucar Cristal
30x150g

Ou seja, a descrição do produto se for muito grande não vem em uma linha única e eu tenho que ficar copiando e colando tudo em uma única linha conforme abaixo:
QTD Cód Descrição
160 4614 Budin Sabor Vainilla con Relleno sabor Chocolate Blanco 6x15x30g
160 4615 Budin de Vainilla con Relleno sabor Chocolate y Cobertura sabor Chocolate 6x15x38g
160 4616 Budin sabor Chocolate con Relleno y Cobertura sabor Chocolate y Confites Azucarados 6x15x38g
100 4662 Vainillas Cubiertas con Azucar Cristal 30x150g

Já tentei a fórmula do concatenar mas aí junta tudo sem espaço, tentei fazer uma macro mas não deu certo,alguém sabe uma forma de fazer uma macro que toda vez que seja executada copie o que está na célula ativa e cole na linha de cima depois do texto que já estiver na célula?

Obrigada galera!

 
Postado : 19/12/2011 12:21 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 


Dayana...

a quantidade e o código vêm em colunas separadas?

 
Postado : 19/12/2011 1:45 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Edson,

Sim, a qtd e o código vem em colunas separadas.

 
Postado : 19/12/2011 1:55 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 


E quando a descrição ultrapassa a linha? O complemento da descrição vem na mesma coluna da descrição, ficando código e quantidade em branco, ou o complemento da descrição vem na coluna da quantidade?

Se estiver difícil de comprender minha dúvida, poderia disponibilizar uma parte do arquivo com dados fictícios...

 
Postado : 19/12/2011 2:53 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite Dayana

Por enquanto vc aguarda o código VBA, vc pode ir quebrando o galho com a função concatenar que deixa espaço entre as palavras.

Baixe a planilha e veja como deixar espaço em branco entre as palavras usando a fórmula concatenar.

http://www.sendspace.com/file/def7s7

Dê retorno.

Um abraço.

 
Postado : 19/12/2011 6:50 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Edson,

Anexei a planilha e acredito que fica mais fácil de compreender, somente lembrando que ela vem pronta do sistema EMS da mesma forma que anexei e a descrição já vem na linha de baixo automaticamente.

Patropi

O Sendspace aqui é bloqueado pode mandar o arquivo direto pelo site?

Obrigada galera!

 
Postado : 20/12/2011 7:24 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Patropi,

Pesquisei na net e aprendi a função concatenar que deixa espaço entre as palavras, muito útil.Obrigada
Mas se conseguirmos fazer a macro fica bem mais automático.

abraços

 
Postado : 20/12/2011 8:04 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 


Dayana, segue modelo.

A Macro é executada diretamente na lista, portanto, analise com atenção se o resultado é exatamente o esperado.

Caso retorne alguma inconsistência ou erro, indique para que possamos corrigir.

 
Postado : 20/12/2011 12:15 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Edson boa tarde,

Cara, vc é um gênio...sem palavras... qdo crescer quero ser igual a vc.rsrs

Mas infelizmente acho que não vai dar.......o seu arquivo ficou perfeito mas pelo que eu entendo de VBA e olhei na programação da macro, ela só funciona nessa planilha, o que eu preciso é criar um arquivo em branco em que eu copie a tabela de descrições do arquivo original que será puxado do EMS e cole nesse formulário em branco e ele faça a “concatenação”... não sei se expliquei direito mas anexei mais um exemplo de uma planilha que eu precisaria concatenar as descrições.

Sabe se é possível criar esse formulário em branco em que eu só precise copiar e colar e ele já concatene?

Tks

 
Postado : 20/12/2011 12:49 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Dayane, me antecipando a responder sobre a questão de executar a rotina que o Edson criou em outros arquivos, o que pode ser feito é criar um arquivo em branco, copiar as rotinas Linha e Limpar e cola-las em módulo neste novo arquivo, Salva-lo como Suplemento, e no editor do VBA selecionar EstaPasta_de_Trabalho e na Janela Propriedade no item IsAddin alterar e False para True, a aba ficará oculta, então feche o excel e quando for solicitado confirme para Salvar.

Depois reabra o Excel e em "Opções do Excel", selecione Suplementos, na janela que se abre procure o arquivo que você criou, selecione e clique em Ir..., será aberto a janela Suplementos, habilite a que acabou de criar e confirme no botão OK.

Com isto, toda vez que abrir qualquer arquivo, o suplemento será carregado, então é só usar as Teclas de Atalho que definiu e a rotina Linha será executada no arquivo.

Mas pelo que vi dos seus exemplos temos um porém, no primeiro exemplo, o qual o Edson se baseou para criar a macro, os dados iniciam na Linha 16, e neste outro exemplo que postou é iniciado na Linha 8, sem falar das Colunas, então para que tenhamos um funcionamento correto, é necessário que todos os arquivos provenientes do EMS tenham o mesmo Layout, eu criei o suplemento adaptando para o seu segundo exemplo, se todos os arquivos forem iguais eu disponibilizo o suplemento que criei para você poder utilizar.

Espero ter sido claro, qualquer duvida, retorne.

[]s

 
Postado : 20/12/2011 7:52 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Edson bom dia,

Muito obrigada pelo retorno, realmente você tem razão foram arquivos diferentes, o que acontece é que eu tenho dois arquivos do EMS, um arquivo é a fatura comercial e o outro é o packing list, no caso, precisaria do arquivo em branco para ambos (fatura comercial e packing list), eu tinha editado os arquivos anteriores mas agora anexei ambos da forma que vem do EMS e assim acredito que podemos trabalhar melhor.
Chequei e realmente os arquivos que eu mandei anteriormente começavam em linhas diferentes mas os arquivos reais puxados do EMS sempre vão iniciar na linha 7.

Agradeço muito a ajuda, já fiz o curso de VBA mas o que eu aprendi nem se compara com o que vcs sabem.....

Dayana Coelho

 
Postado : 21/12/2011 5:49 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Dayana, eu não entendi quando diz que precisa de um arquivo em branco.

Mas, quanto aos dois exemplos, se teem o layout fiel para executar o que pretende, as únicas alterações que terá de fazer nas rotinas são as referencias a Linha e Coluna, por exemplo :

No arquivo Packing List Descrições - A (qde) CANTIDAD inicia na Linha 25 e a DESCRIPCIÓN na Coluna J referenciada na rotina como (10), neste caso alteramos as variaveís :
i = 25 e;
Cells(i, 10)

No arquivo Fatura Comercial Descrições - A (qde) CANTIDAD inicia na Linha 27 e a DESCRIPCIÓN na Coluna K referenciada na rotina como (11), neste caso alteramos as variaveís :
i = 27 e;
Cells(i, 11)

Veja nos exemplos se é isto mesmo o que precisa, se for depois veremos a questão do Suplemento para ser executado nos demais arquivos.


[]s

 
Postado : 21/12/2011 1:27 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Mauro,

Eu disse que precisava do arquivo em branco pois a minha intenção era copiar do arquivo original as descrições e colar neste arquivo em branco para executar a macro, pois, qdo tento copiar as descrições de uma outra fatura na fatura que estamos trabalhando ela trava e tenho que usar CTRL+ALT DEL para conseguir fechar as faturas.

Os arquivos que vc mandou estão excelentes, eu só precisaria poder usá-los em todas as faturas que eu vier a puxar do EMS, para ficar um pouco mais claro, eu anexei a fatura que vc me enviou e uma nova fatura,veja se vc consegue copiar os dados da nova fatura para o nosso arquivo e executar a macro.

Talvez seja eu que não esteja fazendo direito....

Obrigada,
Dayana Coeho

 
Postado : 22/12/2011 7:50 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Dayana, vamos ver se nos acertamos :

1º ) Concatenar os resultados e reordenar as linhas em branco :
Ok, esta questão o Edson solucionou com primacia.

2º ) Você enviou dois modelos com Layouts diferentes : Packing List Descrições e Fatura Comercial Descrições :
Ok, adaptei a rotina do Edson e funcionou conforme o entendimento.

Sendo assim, acredito que quanto a estas questões estamos quites, então vamos partir para a outra questão :

"o que acontece é que eu tenho dois arquivos do EMS, um arquivo é a fatura comercial e o outro é o packing list"
R: É gerado sempre estes dois arquivos, só alterando os dados ? eles teem sempre os mesmos nomes ?

"Eu disse que precisava do arquivo em branco pois a minha intenção era copiar do arquivo original as descrições e colar neste arquivo em branco para executar a macro"
R: Precisamos ter este novo arquivo ? ou, se ajustarmos para que as macros executem independentes podemos manter o arquivo original modificado ? ou, precisamos efetuar uma cópia e manter os originais ?
Se entendi corretamente, alem da sugestão inicial de criar um suplemento, podemos criar um arquivo como sendo o FrontEnd, onde teriamos uma rotina para escolhermos o arquivo a ser ajustado e após executar a rotina.

"eu anexei a fatura que vc me enviou e uma nova fatura,veja se vc consegue copiar os dados da nova fatura para o nosso arquivo e executar a macro"
Eu abri os dois arquivos, e realizei varios tipos de cópias do arq NovaFatura para o Fatura Comercial, executei a rotina e não tive obtive nenhum erro

Aguardo maiores detalhes, que acredito deve estar me escapando algo.

 
Postado : 22/12/2011 12:40 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Mauro, vamos lá!

o que acontece é que eu tenho dois arquivos do EMS, um arquivo é a fatura comercial e o outro é o packing list"
R: É gerado sempre estes dois arquivos, só alterando os dados ? eles tem sempre os mesmos nomes ?
Resp:Sim, estes são os documentos que eu sempre puxo do EMS, porem cada cliente tem uma fatura e um packing list,ou seja, se tenho 100 clientes terei 100 faturas e 100 packing list que serão iguais até a linha a linha 24, a partir da linha 25 a qtd/código/descrição,peso e valor serão diferentes.

"Eu disse que precisava do arquivo em branco pois a minha intenção era copiar do arquivo original as descrições e colar neste arquivo em branco para executar a macro"
R: Precisamos ter este novo arquivo ? ou, se ajustarmos para que as macros executem independentes podemos manter o arquivo original modificado ? ou, precisamos efetuar uma cópia e manter os originais ?
Se entendi corretamente, alem da sugestão inicial de criar um suplemento, podemos criar um arquivo como sendo o FrontEnd, onde teriamos uma rotina para escolhermos o arquivo a ser ajustado e após executar a rotina.
Resp.Exatamente o que preciso é criar um arquivo como sendo o FrontEnd, onde teriamos uma rotina para escolhermos o arquivo a ser ajustado.

"eu anexei a fatura que vc me enviou e uma nova fatura,veja se vc consegue copiar os dados da nova fatura para o nosso arquivo e executar a macro"
Eu abri os dois arquivos, e realizei varios tipos de cópias do arq NovaFatura para o Fatura Comercial, executei a rotina e não tive obtive nenhum erro
Resp Então o erro é a pecinha(Dayana)- Como vc fez?

 
Postado : 22/12/2011 1:39 pm
Página 1 / 2