Atualizar automaticamente a célula no Excel com o registro de data e hora atual quando outra célula é alterada

8

Em uma planilha do Excel, eu gostaria de atualizar automaticamente uma célula com a data e hora atuais quando outra célula é alterada (como um carimbo de data / hora de atualização).

Há um registro de data e hora para cada linha. Gostaria de atualizá-las assim que uma das células anteriores na linha for atualizada.

Você tem alguma indicação sobre como fazer isso?


fonte
@Raystafarian: Temos dupes circulares em andamento. Esta é a questão mais antiga. Se ambos forem fechados, bloquearemos todas as novas respostas.
fixer1234

Respostas:

9

Crie uma célula com o valor Now (). Formate como quiser - como aaaa / mm / dd HH: mm: ss para um timestamp completo em 24 horas.

Agora, desde que o recálculo automático (o padrão) seja definido, sempre que outra célula for alterada, você receberá um novo registro de data e hora.

Após reflexão adicional, se você desejar um registro de data e hora codificado, que só é atualizado por ações que não incluem itens como pasta de trabalho aberta, impressão, etc., você pode criar uma macro anexada a worksheet_change. Defina a célula de destino como texto, com formatação específica, como antes. Use algo como: Sheet1.Cells []. Value = Text (Agora (), "aaaa / mm / dd HH: mm: ss") no evento Worksheet_Change.

Se você colocar isso em um modelo que carrega na inicialização, você nunca terá que pensar sobre isso novamente.

wbogacz
fonte
+1 Como a segunda resposta melhor que a primeira.
DaveParillo
Atualizei a pergunta para refletir melhor a necessidade: há um registro de data e hora para cada linha. Gostaria de atualizá-las assim que uma das células anteriores na linha for atualizada. Então eu acho que uma macro é necessária aqui como você mencionou. Eu vou procurar dessa maneira. Obrigado.
Deve-se observar que colocar o código no evento Worksheet_Change () fará com que o Excel limpe a pilha de desfazer toda vez que for executado. Portanto, se você estiver atualizando valores em outro local da planilha, essa solução desativará essencialmente essa pasta como um efeito colateral.
Ross McConeghy
8

http://chandoo.org/wp/2009/01/08/timestamps-excel-formula-help/ tem detalhes sobre como implementar registros de data e hora usando fórmulas recursivas. Eles trabalham um deleite.

O artigo descreve como primeiro ativar a fórmula circular (desativada por padrão) e, em seguida, como criar uma fórmula circular que insere automaticamente um registro de data e hora quando uma célula específica tiver um valor inserido.

Se a célula para conter o registro de data e hora for B3 e a célula a ser observada for C3, a fórmula será:

=IF(C3<>"",IF(B3="",NOW(),B3),"")

Ou seja, quando C3 não está vazio, defina B3 como NOW () (se B3 estiver vazio), caso contrário, o valor atual de B3.

Isso parece estável durante as atualizações e salva.

Jonathan Wright
fonte