Manter histórico de alterações em uma tabela do Excel para outra planilha

0

Estou tentando criar um painel no Excel 2010 para meu departamento, que será o mais automatizado possível. Então, eu tenho uma tabela, com dados que serão atualizados em cada célula a cada mês ou semana. Agora, meu problema é que, quando alguém vai e altera o valor de uma célula para o novo valor do novo mês, não quero perder o valor anterior do mês anterior.

Existe alguma maneira possível de salvar automaticamente toda vez que os valores das células na tabela, mantendo todos os antigos? Mais especificamente, gostaria de manter uma cópia de todo o histórico da tabela, por exemplo, por 12 meses em uma planilha diferente. Eu usei um código no VBA até o momento que salva a linha que todas as mudanças acontecem, mas não está expandindo, ou seja, quando uma alteração acontece em outra linha, as alterações serão exibidas exatamente no mesmo lugar onde estava o histórico anterior. Além disso, a função é acionada imediatamente depois que clico na célula. Eu preferiria que a função armazenasse os dados somente quando uma alteração fosse feita no valor da célula. Existe alguém que possa me ajudar a resolver esse problema?

Obrigado !!

    
por user470084 24.07.2015 / 21:44

1 resposta

0

Sem saber qual é a aparência da sua tabela ou quão grande e complexo ela é, aqui estão duas opções:

1. Guias pré-geradas

SE as alterações forem sempre feitas no mesmo intervalo (por exemplo, mensal, semanal, etc ...), por que não criar uma pasta de trabalho que tenha guias separadas para cada intervalo em que você fizer alterações? Por exemplo, se você atualizar as células mensalmente, tenha uma guia para cada mês.

Basta que cada folha faça referência a uma antes. Assim, cada célula na tabela de fevereiro exibirá o que estiver em cada célula da tabela de janeiro, até você atualizar as células. Em seguida, a tabela de março fará referência automaticamente à tabela de fevereiro e assim por diante. Essa é uma maneira simples de fazer isso e funcionará contanto que sua equipe seja competente o suficiente para atualizar a guia correta.

2. Crie uma macro

Outra opção seria criar uma macro que duplicará automaticamente a planilha que contém sua tabela, nomeará como a data e a hora atuais e a moverá para o final. Você pode vincular a macro a um botão, portanto, depois de fazer as atualizações necessárias na "tabela mestre", basta clicar no botão. Essa macro pode se parecer com isso:

Sub SaveTable()

Dim CurrentDate As String, CurrentTime As String

CurrentDate = Format(Date, "MMM DD, YYYY")
CurrentTime = Format(Time, "HHMM")

Sheets("Table").Copy After:=Worksheets(Worksheets.Count)
Sheets(Worksheets.Count).Name = CurrentDate & " " & CurrentTime

End Sub

Simplesmente substitua "Tabela" por qualquer nome que você queira nomear sua planilha mestre.

    
por 26.07.2015 / 00:29