fechar

Aprender Excel

APRENDER EXCEL

DICAS E NOVIDADES SOBRE EXCEL

Registrando data e a hora de alteração no Excel sem VBA

por: Maximiliano Meyer em Tutoriais, no dia 04/11 | 16:47 atualizado em 16/08 | 08:10

Temos vários posts onde colocamos códigos VBA aqui no nosso site. E um deles que mais faz sucesso entre os leitores é este que você pode conferir clicando aqui, onde ensinamos a registrar a data e a hora em que houve uma alteração em sua planilha através de algumas linhas de código.

Porém, alguns leitores têm receio em trabalhar com os códigos e acabar fazendo algo que não deve. E se esse é o seu caso, não se assuste, pois não será por isso que você deixará de aproveitar esse recurso =D

Vamos aprender a partir de agora como obter o mesmo resultado utilizando somente fórmulas e nem uma linha de código sequer. Confira:

Usaremos para isso a função =Agora(). Veja que a sintaxe dela está completa e não será necessário nem mesmo 1 argumento sequer. Facílima de ser implementada, assim como a função =Hoje() coloca a data atual na tela, a função =Agora() coloca a data e a hora atual no momento de sua inserção.

Ela age da seguinte forma: Após inserida em sua planilha, cada vez que algum dado for modificado, não importando aonde, o resultado da fórmula =Agora() será atualizado para a data e hora exata de tal mudança. Vamos ver na prática. Imagine o seguinte exemplo:

Veja que é um controle de saída bastante simples e que na célula de data eu estou preenchendo manualmente com a data e a hora da negociação. Se você tem 50 notas para preencher na tarde irá ter problemas em digitar 50 vezes a data e a hora, mas caso você implemente a função =Agora() tudo isto será feito automaticamente. Veja o resultado:

Pronto, agora a cada info modificada em QUALQUER lugar da planilha irá fazer com que ocorra a atualização. Assim como no registro feito através de VBA, mas usando apenas as funções nativas do Excel.

Mas e se você quiser mais precisão e quiser incluir os segundos? Fácil. Faça o seguinte: Clique com o botão direito na célula onde está a função =Agora() e depois clique em 'Formatar células...' No menu esquerdo clique em 'personalizado' e então na caixa de texto que conterá 'dd/mm/aaaa hh:mm' (caso não esteja selecionado este valor, procure-o na listagem) adicione ':ss'. Clique no Ok e pronto, mais precisão, impossível.

O mesmo vale para caso você queira exibir apenas a hora (selecione hh:mm na janela de formatar células) ou apenas a data (dd/mm/aa ou dd/mmm ou mmm/aa, etc.). Você pode brincar e escolher a forma que melhor se adapta ao seu trabalho.

Veja na prática como ficará:

Mas e se você não quiser que a célula final (aquela do horário e data) seja alterada a cada nova entrada de dado, apenas quando determinada célula for preenchida? Podemos fazer isso e tudo que utilizaremos, além da função =Agora(), será a função condicional =Se().

Não darei uma aula completa aqui falando da =Se, pois temos um post só pra ela, mas, resumidamente, ela retorna um valor determinado por nós quando uma certa condição for atingida. Sabendo isso faremos o seguinte: Vamos configurar a função =Se para retornar em branco quando a última célula a ser preenchida estiver vazia, e retornar a função =Agora() quando esta célula contiver qualquer tipo de dados.

Assim, ela só vai printar data e hora quando a última célula disponível para preenchimento receber algo e também não ficará atualizando a cada momento. Voltando ao exemplo acima, irei tomar como última célula aquela referente à quantidade. A fórmula ficará =SE(E4="";"";AGORA()).

Repare que entra as aspas não há nada. Essa é a célula vazia a qual me referi. Bem veja agora na pratica como funcionará e note que a função =Agora() só é chamada quando há entrada de dados em E4, aquela célula referente à quantidade e, se apagarmos seu conteúdo, a data e hora some.

Outros métodos de fazer este processo

E se você não quiser utilizar esta fórmula, pois não quer que ela seja alterada a cada novo dígito inserido, mas também não quer envolver a função =Se? Então a solução é você usar os atalhos do teclado. Por exemplo: Navegue até a célula que quer colocar a data ou a hora e pressione:

  • Ctrl + shift + : para inserir a hora
  • Ctrl + ; para inserir a data

 

Bom pessoal. Agora você já sabem como registrar de maneira automática (ou nem tanto, caso prefiram) a hora de alteração de uma célula específica. A partir daqui é com a criatividade de vocês. Abaixo, o download da planilha que usamos na aula.

Problemas com o download?

Veja nosso tutorial e saiba como resolver qualquer tipo de problema que você enfrentar para baixar, abrir ou executar nossas planilhas.