Criando log no Excel VBA – Nome do usuário VBA, Data e hora VBA

Cálculo de prazo de entrega e valores dos correios - Excel VBA
Cálculo de prazo de entrega e valores dos correios – Excel VBA
23 de setembro de 2012
Auto completar em Excel VBA
Auto completar em Excel VBA
13 de outubro de 2012

Criando log no Excel VBA – Nome do usuário VBA, Data e hora VBA

Objetivo: Disponibilizar um exemplo de como ter uma planilha de log, indicando quando foi digitado um valor específico na planilha.

Esta planilha possui um código Excel VBA bastante simples, demonstrando como preencher uma coluna com a data da alteração e outra com o nome do usuário logado que realizou a alteração.

O código abaixo já está com a devida explicação, e você pode baixar o exemplo e depurar o código para vê-lo funcionando, chamo a atenção para o detalhe de desligar a escuta do sistema para procedimentos que foram executados, afim de que o sistema não entre em loop.

'A cada alteração em uma célula este procedimento é executado
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo TratarErro

    'Identifica se a coluna está preenchida e se a coluna selecionada foi a 1
    If Target.Column = 1 And Target.Value  "" Then

        'Desliga a escuta dos eventos temporariamente
        Application.ScreenUpdating = False

        'Passa a data e hora atual e o usuário
        Target.Offset(0, 1).Value = Now()
        Target.Offset(0, 2).Value = VBA.Environ("username")
    End If

TratarErro:
    'Liga novamente a escuta dos eventos
    Application.ScreenUpdating = True
End Sub

GUT PPT

Abraço

Marcos Rieper


Clique aqui e leia mais sobre Excel VBA. https://www.guiadoexcel.com.br/vba/ O Guia do Excel foi criado por Marcos Rieper e oferece artigos, dicas, tutoriais e modelos de planilhas prontas. Aqui você encontra tudo sobre Excel, seja de nível básico, intermediário,  avançado e VBA. O Guia do Excel oferece diversos materiais completamente gratuitos para download. Navegue em nosso site e confira! Conheça também a nossa Loja do Excel https://loja.guiadoexcel.com.br/
Cursos

Curso Excel Completo – Curso Excel Básico + Curso Excel Avançado – Acesso Vitalício

R$218,00 R$179,00

COMPRAR
Cursos

Curso Excel Master – Curso Excel Básico + Curso Excel Avançado + Curso VBA Excel + LP – Acesso Vitalício

R$357,00 R$249,00

COMPRAR
Cursos

Curso Excel PRO – Curso Excel Avançado + Curso VBA Excel + Lógica de programação – Acesso Vitalício

R$258,00 R$199,00

COMPRAR
Cursos

Curso Excel Web – Curso VBA Excel + Lógica de programação + Curso Web Scraping VBA- Acesso Vitalício

R$388,90 R$309,00

COMPRAR

3 Comentários

  1. Andreia Gomes disse:

    Boa tarde, há muito tempo eu procuro por essa informação e só agora eu consegui, porém na minha planilha são setores diferentes que utilizam a planilha e cada uma tem a coluna certa para receber, gostaria de saber se possível, se tem como colocar essa função de data e login de rede em duas colunas.
    Não tenho muito conhecimento em VBA, o que sei é de curiosidade.
    Muito obrigada e parabéns pela sua iniciativa.

  2. Edimar Fernandes Gomes disse:

    Marcos boa noite,
    Como faço para extender para várias colunas a avaliação de se houve alteração?

    • Marcos Rieper disse:

      Olá Edimar,

      É sim, basta alterar o Target Column para a coluna que deseja incluindo as cláusulas necessárias, por exemplo Target.Column < = 10. 'A cada alteração em uma célula este procedimento é executado Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo TratarErro 'Identifica se a coluna está preenchida e se a coluna selecionada foi a 1 If Target.Column = 1 And Target.Value <> “” Then

      ‘Desliga a escuta dos eventos temporariamente
      Application.ScreenUpdating = False

      ‘Passa a data e hora atual e o usuário
      Target.Offset(0, 1).Value = Now()
      Target.Offset(0, 2).Value = VBA.Environ(“username”)
      End If

      TratarErro:
      ‘Liga novamente a escuta dos eventos
      Application.ScreenUpdating = True
      End Sub

      Abraço
      Marcos Rieper

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Inscreva-se no nosso canal do Youtube!


Junte-se ao nosso canal do Youtube. Começamos em abril de 2016, mas já temos mais de 06:00 h de treinamentos gratuitos e este número irá aumentar. Vídeos novos todos os sábados.