Ir ao conteúdo
  • Cadastre-se

Macro para renomear aba e atualizar fórmulas


Posts recomendados

Prezados,

Tenho a macro abaixo que cria uma cópia somente com os valores da guia "mãe" renomeando para o texto "Inserir Mês", de modo que o usuário possa inserir o mês de referência, que seria o mesmo mês da planilha "mãe". Porém tem um detalhe. Cada vez que o usuário renomeia "Inserir Mês" pelo mês da guia "mãe", p. ex. "JAN", "FEV",..., estes alimentam uma série de fórmulas em uma planilha de tabulação que assim alimenta os relatórios gráficos. Porém toda vez que se renomeia, é necessário aquela velha "martelada" nas células das fórmulas para atualiza-las, pois como não tem o nome previamente cadastrado ("JAN", "FEV",...) apresentam erro de valor "#VALOR". Queria que a macro renomeasse automaticamente a cópia para o nome do mês de referência da guia "mãe" e atualizasse automaticamente as fórmulas.

Segue:

Sheets("BMVT").Select
    Sheets("BMVT").Copy After:=Sheets("Recibo")
    Sheets("BMVT (2)").Select
    Sheets("BMVT (2)").Name = "Inserir Mês"
    Sheets("BMVT").Select
    Range("BMVT").Select
    Selection.Copy
    Sheets("Inserir Mês").Select
    Range("A6").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("BMVT").Select
    Application.CutCopyMode = False
    Range("A6").Select
    Sheets("Inserir Mês").Select
    Range("A6").Select

 

Link para o comentário
Compartilhar em outros sites

Como eu tava buscando um norte para essa macro, eu fui ajustando a gravação de macro do Excel, de maneira que chequei a esse resultado. Até que ele funciona com certa utilidade. A questão é que quero reduzir as "forçadas" como: ter que renomear a aba criada - ao invés de "Inserir Mês", ser já o mês conforme a célula de seleção (na planilha BMVT é a W4) - e ter que dar a "martelada" com o Enter nas fórmulas da aba "Rel_Gestão" de modo que estas já atualizem os dados.

Link para o comentário
Compartilhar em outros sites

Cara sua planilha precisa de ter alguns dados.

 

Ela precisa estar funcional para que possamos entender testar o arquivo, é claro que os dados nao devem ser reais, so devem mostar como funciona sua planilha. você conhece o funcionamento então fica fácil preencher os outros usuarios nao. e o @DJunqueira  tem razão você nao precisa criar e apagar uma planilha por mes você pode lançar o ano todo em uma unica aba e criar os relatorios que quiser a parte, seja com macro, com formulas ou ainda com Tabela Dinamica, essa ultima coitada é poderosa mas muito desprezada.

 

Em resumo lançando os dados na planilha com um banco de dados e uma tabela dinamica bem elaborada você tem todos os totais que precisar, seja por funcionario, por mes, por ano, por setor, por situação, enfim pelo que você quiser.

Link para o comentário
Compartilhar em outros sites

5 minutos atrás, CasaDoHardware disse:

Cara sua planilha precisa de ter alguns dados.

 

Ela precisa estar funcional para que possamos entender testar o arquivo, é claro que os dados nao devem ser reais, so devem mostar como funciona sua planilha. você conhece o funcionamento então fica fácil preencher os outros usuarios nao. e o @DJunqueira  tem razão você nao precisa criar e apagar uma planilha por mes você pode lançar o ano todo em uma unica aba e criar os relatorios que quiser a parte, seja com macro, com formulas ou ainda com Tabela Dinamica, essa ultima coitada é poderosa mas muito desprezada.

 

Em resumo lançando os dados na planilha com um banco de dados e uma tabela dinamica bem elaborada você tem todos os totais que precisar, seja por funcionario, por mes, por ano, por setor, por situação, enfim pelo que você quiser.

Agora é a minha vez de concordar com o CasaDoHardware, nós tb precisamos de dados fictícios p/ testar possíveis soluções e tabelas dinâmicas são muito desprezadas, especialmente pela possibilidade de montar relatórios mais sofisticados utilizando funções cubo.

Link para o comentário
Compartilhar em outros sites

Em 27/06/2016 às 15:38, Gabriel Mascarenhas disse:

... é que quero reduzir as "forçadas" como: ter que renomear a aba criada - ao invés de "Inserir Mês", ser já o mês conforme a célula de seleção (na planilha BMVT é a W4) - e ter que dar a "martelada" com o Enter nas fórmulas da aba "Rel_Gestão" de modo que estas já atualizem os dados

 

Com base nos conteúdos possíveis em 'W4' a planilha referente ao mês de outubro receberá o nome "Outubro", no entanto nas fórmulas da planilha 'Rel_Gestao' você utilizou o nome da planilha como "OUT".

Dessa forma as fórmulas vão continuar retornando  #VALOR. Ou você muda o nome da planilha ou muda a fórmula. Decida o que você quer fazer, disponibilize nova amostra do seu arquivo com as correções, em seguida te passo um código para fazer a cópia da planilha, renomear e "dar a martelada"!

 

Link para o comentário
Compartilhar em outros sites

  • mês depois...

Caríssimo @osvaldomp,

 

Ao retornar de férias, o pessoal que ficou rodando a planilha, a quem pedi, de modo que possamos melhorá-la ainda mais, questionou o seguinte. Quando os valores unitários são atualizados na guia "Rota", devido a fórmula, eles automaticamente atualizam as planilhas já geradas o que ocasiona uma alteração final de valores totais para fins de relatório no final do ano. Então acredito que o melhor seria copiarmos os valores das fórmulas. Como eu havia dito, estava utilizando o script abaixo para realizar essa operação, que na atual macro não funciona.

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

 

Peço que veja a planilha enviada antes para ver como podemos fazer essa operação.

 

Muito obrigado,

Gabriel

Link para o comentário
Compartilhar em outros sites

  • mês depois...
Em 18/08/2016 às 10:34, Gabriel Mascarenhas disse:

Caríssimo @osvaldomp,

 

Ao retornar de férias, o pessoal que ficou rodando a planilha, a quem pedi, de modo que possamos melhorá-la ainda mais, questionou o seguinte. Quando os valores unitários são atualizados na guia "Rota", devido a fórmula, eles automaticamente atualizam as planilhas já geradas o que ocasiona uma alteração final de valores totais para fins de relatório no final do ano. Então acredito que o melhor seria copiarmos os valores das fórmulas. Como eu havia dito, estava utilizando o script abaixo para realizar essa operação, que na atual macro não funciona.

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

 

Peço que veja a planilha enviada antes para ver como podemos fazer essa operação.

 

Muito obrigado,

Gabriel

@DJunqueira Peço verificar se é possível ajudar nesse post.

 

Muito grato

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...