- 23 Nov 2015 às 09:24
#5268
Ola, venho novamente solicitar uma ajuda.
1- Tenho uma planilha Tabela Base.xLsm e dentro varias planilhas como "RESUMO" e outra "PRODUTOS" e "COMISSÕES".
2- Desejo criar varias planilhas conforme executar uma determinada Macro.
Tenho uma Tabela de Pedidos ( Tabela Base.xLsm ), ao qual serve para tirar o pedido das lojas e enviar a fábrica. A Planilha possui varias Abas . A Principal se chama "Resumo", tenho a de "Produtos" e tenho a de "Comissões".
Tenho uma Celula H10, ao qual nela coloco o nome da Loja e por esta pego todas as informacoes da loja. Entao tudo se baseia nesta Celula H10.
Existe uma Macro 1 ( Salvar /Enviar), que pega os valores bases de comissoes do "Resumo" e cola na Planilha "Comissões" uma linha debaixo da outra, conforme for tirando os pedidos. Grava parte da Planilha em xLs 9 1 ABA chamada "PEDIDO") e envia o pedido automaticamente para a Fabrica. Depois disto Limpa os campos digitados nas Planilhas Resumo e Produtos, e deixa a planilha pronta novamente para o proximo pedido a salvando como .xLsm.
Tenho uma outra Macro 2 ( Frete), que caso seja preciso fazer uma cotacao de frete, eu envio a fabrica somente parte desta planilha em .xLs e aguardo o valor do frete, para ai entao pegar este valor e colocar no pedido e entao rodar a Macro 1. Porem enquanto aguardo o valor, tenho que tirar outros pedidos que serao enviados conforme a Macro 1 ou cotados na Macro 2.
Eu gostaria que todas as vezes que for solicitado o frete, a Macro 2 (Frete), criasse uma Nova Aba com o Nome que estiver na Celula H10. Se eu solicitar 3x o frete vai ser criado por exemplo a Aba loja 1, depois a Loja 2 e depois a Loja 3 e assim sucessivamente. Porem essas abas criadas mas para frente serao apagadas dentro da Macro 1(Salvar/Enviar). Mais a frente explico.
Dentro dessas novas Abas criadas ( Loja 1, Loja 2 ....), colocarei algumas partes da planilha Resumo que serao copiadas seguindo-se a rotina abaixo, que certamente tera que ser adaptada.
Set Ws2 = Sheets("Loja 1 ou Loja 2") 'Referencia a guia Loja (1,2...) como Ws2
Set Dest = Ws2.Range("B3").Range("B52").End(xlUp).Offset(1, -1) 'Encontra a ultima linha da guia Loja ( 1,2 ...) (definida como Dest)
Ws1.Range("AB2:AH2").Copy 'Copia o intervalo AB2:AG2 da guia Resumo
Dest.PasteSpecial xlPasteValues 'Cola valores na guia Loja 1 ou Loja 2 .....
Application.CutCopyMode = False 'Desativaj o clipboard
Desta forma, vamos que eu tire um pedido que nao preciso cotar o Frete, entao vou e executo a Macro 1, ao qual é enviado o pedido em formato xLs a Fabrica apenas indo a Aba selecionada, pego as informacoes que quero do Resumo e as colo em Comissoes, depois limpado os campos digitados e deixando a planilha pronta para o proximo pedido e a salvando como xLsm.
Vamos que eu agora tenho outro pedido e tenho que cotar o frete, entao rodo a Macro 2 que ira preparar numa nova Aba com o nome H10 , esta Macro 2 envia a cotacao a fabrica como .xLs, apenas a Aba selecionada , depois disto apaga as areas digitadas em Resumo e Produtos, e salva toda a Planilha como "Tabela Base.xLsm", deixando-a pronta para o proximo pedido ou solicitacao de frete. Note que ao abri-la agora "Tabela Base.xLsm"existe a aba anteriormente criada "Loja 1 por exemplo" Se cotar novamente sera criada a Loja 2 .... . Se nao cotar tiro o pedido mas a loja 1 ainda fica a espera do valor de frete .
Dentro da Aba Loja 1... terá poucas areas de informacoes, a Celula valor de frete sera uma delas.
Quando eu tiver o valor de frete eu abro a Tabela Base, vou na Aba Loja 1 por exemplo, coloco o valor de frete. Quero que o Excel compreenda que o ciclo se fechou e neste momento crie na Aba Resumo um Botao em um ponto especifico, exemplo X15 e ao lado crie outra celula Y15 com o nome da Aba, neste caso a Loja 1. Entao ficaria o botao na X15 e na Y15 o nome da loja ( nome da Aba). se tiverem outros ciclos fechados que crie abaixo de X15 e Y15.. Para isso vou deixar 10 linhas reservadas para isso X15 a X25 e Y15 a Y25.
Se houver somente uma Aba entao X e Y 16 a 25 ficam em branco . se tiver duas abas de lojas entao X e Y 17 a 25 ficam em branco .
O proximo passo é pegar este Botao e selecionar , feito isto entra em acao outra MAcro 3 que sera responsavel em pegar as informacoes da aba ( Loja ) que ja possui o frete e transportar para as Celulas em Resumo, depois disto a Macro 3 apaga toda a ABA Loja 1, e depois desmarca o botao X15 e apaga Y15. Feito isto é como se eu tivesse tirando um pedido sem solicitacao de frete, dai entao posso usar normalmente a Macro 1.
OBS : Se tiverem outras Abas Loja 2, Loja 3 .... Elas ficam intactas esperando o valor de frete. Entao quando eu abrir novamente a Tabela Base, para um novo Pedido ou nova Cotacao ( neste caso seria gravada a Aba Loja 3 ( conforme o que estiver em H10 ) ).
Resumindo: Poderei tirar varios pedidos e fazer varias cotacoes de fretes que ficarao estes em Standy By, usando a mesma Tabela Base. Assim terei sempre uma Tabela Base atualizada as comissoes e esta mesma Tabela Base tera todas as Abas temporarias ( Loja 1, Loja 2....).
Note que em Resumo X e Y15 a X e Y25, toda vez que o ciclo for fechado o botao ficara desmarcado e Y em branco a espera do nome da proxima loja/Aba.
Espero que tenham entendido a minha necessidade.
Para isso caso possam me ajudar, eu colocaria aqui a minmha Tabela que ja esta pronta faltando somente adaptar a mesma as condicoes acima.
Grato
Andre Luiz
1- Tenho uma planilha Tabela Base.xLsm e dentro varias planilhas como "RESUMO" e outra "PRODUTOS" e "COMISSÕES".
2- Desejo criar varias planilhas conforme executar uma determinada Macro.
Tenho uma Tabela de Pedidos ( Tabela Base.xLsm ), ao qual serve para tirar o pedido das lojas e enviar a fábrica. A Planilha possui varias Abas . A Principal se chama "Resumo", tenho a de "Produtos" e tenho a de "Comissões".
Tenho uma Celula H10, ao qual nela coloco o nome da Loja e por esta pego todas as informacoes da loja. Entao tudo se baseia nesta Celula H10.
Existe uma Macro 1 ( Salvar /Enviar), que pega os valores bases de comissoes do "Resumo" e cola na Planilha "Comissões" uma linha debaixo da outra, conforme for tirando os pedidos. Grava parte da Planilha em xLs 9 1 ABA chamada "PEDIDO") e envia o pedido automaticamente para a Fabrica. Depois disto Limpa os campos digitados nas Planilhas Resumo e Produtos, e deixa a planilha pronta novamente para o proximo pedido a salvando como .xLsm.
Tenho uma outra Macro 2 ( Frete), que caso seja preciso fazer uma cotacao de frete, eu envio a fabrica somente parte desta planilha em .xLs e aguardo o valor do frete, para ai entao pegar este valor e colocar no pedido e entao rodar a Macro 1. Porem enquanto aguardo o valor, tenho que tirar outros pedidos que serao enviados conforme a Macro 1 ou cotados na Macro 2.
Eu gostaria que todas as vezes que for solicitado o frete, a Macro 2 (Frete), criasse uma Nova Aba com o Nome que estiver na Celula H10. Se eu solicitar 3x o frete vai ser criado por exemplo a Aba loja 1, depois a Loja 2 e depois a Loja 3 e assim sucessivamente. Porem essas abas criadas mas para frente serao apagadas dentro da Macro 1(Salvar/Enviar). Mais a frente explico.
Dentro dessas novas Abas criadas ( Loja 1, Loja 2 ....), colocarei algumas partes da planilha Resumo que serao copiadas seguindo-se a rotina abaixo, que certamente tera que ser adaptada.
Set Ws2 = Sheets("Loja 1 ou Loja 2") 'Referencia a guia Loja (1,2...) como Ws2
Set Dest = Ws2.Range("B3").Range("B52").End(xlUp).Offset(1, -1) 'Encontra a ultima linha da guia Loja ( 1,2 ...) (definida como Dest)
Ws1.Range("AB2:AH2").Copy 'Copia o intervalo AB2:AG2 da guia Resumo
Dest.PasteSpecial xlPasteValues 'Cola valores na guia Loja 1 ou Loja 2 .....
Application.CutCopyMode = False 'Desativaj o clipboard
Desta forma, vamos que eu tire um pedido que nao preciso cotar o Frete, entao vou e executo a Macro 1, ao qual é enviado o pedido em formato xLs a Fabrica apenas indo a Aba selecionada, pego as informacoes que quero do Resumo e as colo em Comissoes, depois limpado os campos digitados e deixando a planilha pronta para o proximo pedido e a salvando como xLsm.
Vamos que eu agora tenho outro pedido e tenho que cotar o frete, entao rodo a Macro 2 que ira preparar numa nova Aba com o nome H10 , esta Macro 2 envia a cotacao a fabrica como .xLs, apenas a Aba selecionada , depois disto apaga as areas digitadas em Resumo e Produtos, e salva toda a Planilha como "Tabela Base.xLsm", deixando-a pronta para o proximo pedido ou solicitacao de frete. Note que ao abri-la agora "Tabela Base.xLsm"existe a aba anteriormente criada "Loja 1 por exemplo" Se cotar novamente sera criada a Loja 2 .... . Se nao cotar tiro o pedido mas a loja 1 ainda fica a espera do valor de frete .
Dentro da Aba Loja 1... terá poucas areas de informacoes, a Celula valor de frete sera uma delas.
Quando eu tiver o valor de frete eu abro a Tabela Base, vou na Aba Loja 1 por exemplo, coloco o valor de frete. Quero que o Excel compreenda que o ciclo se fechou e neste momento crie na Aba Resumo um Botao em um ponto especifico, exemplo X15 e ao lado crie outra celula Y15 com o nome da Aba, neste caso a Loja 1. Entao ficaria o botao na X15 e na Y15 o nome da loja ( nome da Aba). se tiverem outros ciclos fechados que crie abaixo de X15 e Y15.. Para isso vou deixar 10 linhas reservadas para isso X15 a X25 e Y15 a Y25.
Se houver somente uma Aba entao X e Y 16 a 25 ficam em branco . se tiver duas abas de lojas entao X e Y 17 a 25 ficam em branco .
O proximo passo é pegar este Botao e selecionar , feito isto entra em acao outra MAcro 3 que sera responsavel em pegar as informacoes da aba ( Loja ) que ja possui o frete e transportar para as Celulas em Resumo, depois disto a Macro 3 apaga toda a ABA Loja 1, e depois desmarca o botao X15 e apaga Y15. Feito isto é como se eu tivesse tirando um pedido sem solicitacao de frete, dai entao posso usar normalmente a Macro 1.
OBS : Se tiverem outras Abas Loja 2, Loja 3 .... Elas ficam intactas esperando o valor de frete. Entao quando eu abrir novamente a Tabela Base, para um novo Pedido ou nova Cotacao ( neste caso seria gravada a Aba Loja 3 ( conforme o que estiver em H10 ) ).
Resumindo: Poderei tirar varios pedidos e fazer varias cotacoes de fretes que ficarao estes em Standy By, usando a mesma Tabela Base. Assim terei sempre uma Tabela Base atualizada as comissoes e esta mesma Tabela Base tera todas as Abas temporarias ( Loja 1, Loja 2....).
Note que em Resumo X e Y15 a X e Y25, toda vez que o ciclo for fechado o botao ficara desmarcado e Y em branco a espera do nome da proxima loja/Aba.
Espero que tenham entendido a minha necessidade.
Para isso caso possam me ajudar, eu colocaria aqui a minmha Tabela que ja esta pronta faltando somente adaptar a mesma as condicoes acima.
Grato
Andre Luiz
Você não está autorizado a ver ou baixar esse anexo.