Fórmula para atualizar a célula com base no usuário alterando o conteúdo de outra célula

1

Eu quero saber se existe uma fórmula para atualizar uma célula no Excel com a data de hoje

  • quando um usuário altera qualquer valor na linha que contém essa célula

OR

  • quando um usuário altera o valor de 6/7/8 células específicas (que estão na mesma linha).

A obtenção da data de hoje é bastante fácil usando A1 = today() , mas como faço para que isso aconteça na atualização do usuário, conforme descrito acima?

    
por xited 24.02.2015 / 21:53

1 resposta

1

Este é um exemplo para a linha # 7. Digite a seguinte macro de eventos na área de código da planilha:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim R As Range
    Set R = Range("A7").EntireRow
    If Intersect(R, Target) Is Nothing Then Exit Sub
    Application.EnableEvents = False
        R.Cells(1, 1).Value = Date
    Application.EnableEvents = True
End Sub

Se alguma coisa for alterada na linha nº 7, A7 será atualizado com a data de hoje.

Por ser um código de planilha, é muito fácil de instalar e usar automaticamente:

  1. clique com o botão direito do mouse no nome da guia próximo à parte inferior da janela do Excel
  2. selecione Exibir código - isso abre uma janela do VBE
  3. cole o material e feche a janela do VBE

Se você tiver alguma dúvida, tente primeiro em uma planilha de teste.

Se você salvar a pasta de trabalho, a macro será salva com ela. Se você estiver usando uma versão do Excel posterior a 2003, deverá salvar o arquivo como .xlsm em vez de .xlsx

Para remover a macro:

  1. abrir as janelas do VBE como acima
  2. limpe o código
  3. feche a janela do VBE

Para saber mais sobre macros em geral, consulte:

link

e

link

Para saber mais sobre macros de eventos (código da planilha), consulte:

link

As macros devem estar ativadas para que isso funcione!

    
por 25.02.2015 / 19:35