Logo Hardware.com.br
gscorrea
gscorrea Novo Membro Registrado
9 Mensagens 2 Curtidas

Como congelar data no excel?

#1 Por gscorrea 18/05/2016 - 09:37
Pessoal, bom dia!

Eu preciso de uma Ajudinha!

Bem, eu tenho umas tabelas numa planilha onde preencho com dados do produto, (darei ênfase nas células A12 e A13 pois as demais células e colunas não precisam ser citadas, já que não irá fazer a diferença).

A célula (A12) chama-se Descrição e na célula de baixo chama-se Data (A13).

Na célula de de data (A13) eu tenho uma formula assim: =se(C12="";AGORA();0), entretanto, essa data muda pro dia de hoje toda vez que atualizo/abro a planilha, o que é totalmente compreendível, pois na formula está como AGORA(). Estive procurando como bloqueá-la até que achei a seguinte macro:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 And Target.Row > 1 Then
If Cells(Target.Row, 2) <> "" Then
Cells(Target.Row, 1) = Format(Now(), "dd/mm/yy - hh:mm:ss")
Else: Cells(Target.Row, 1) = ""
End If
End If
End Sub

Porém ela funciona somente para uma coluna, e eu queria usar em varias linhas e colunas por exemplo:

  • C2, B2, D2...
  • C12, B12, D12...!

Aí que vai minha dúvida, é possível que essa coluna e linha seja preenchida automaticamente quando digitado algo na coluna de descrição e não mude a cada vez que for aberta a planilha.

Obrigado e abraços!
Marcelo G Prudencio
Marcelo G Pr... Geek Registrado
1K Mensagens 227 Curtidas
#3 Por Marcelo G Pr...
18/05/2016 - 12:15
No modulo da planilha cola esse codigo

Ele vai inserir a data na coluna D a cada alteração na coluna A, sempre na mesma linha

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Column <> 1 Then Exit Sub

If Range("A" & Target.Row).Value <> "" Then
Range("D" & Target.Row).Value = Date

End If

End Sub
Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho." - Autor Desconhecido
Simplifica que simples fica. - Nicole Tomazella.
"O Simples é Sempre Melhor Que o Complicado" - Jorge Paulo Lemann.
gscorrea
gscorrea Novo Membro Registrado
9 Mensagens 2 Curtidas
#4 Por gscorrea
19/05/2016 - 09:08
Marcelo, bom dia.

Obrigado pela rápida resposta.

Segue em anexo a planilha para maior entendimento. Aqui no meu trabalho foi criado esta planilha de inspeção semanal, nela consta os dados de cada produto.

A fórmula =se(""="Liberado";AGORA();0), encontra-se nas células pintadas em vermelho. As células pintadas em verde serão preenchidas com Liberado!

Espero que fique mais claro.

Obg.

Anexos

gscorrea
gscorrea Novo Membro Registrado
9 Mensagens 2 Curtidas
#5 Por gscorrea
19/05/2016 - 09:12
Shura16 disse:
Marque a opção para cálculo Manual em Fórmulas -> Opções de Cálculo -> Manual.

É o contrário do tutorial:
http://marcelmsoares.blogspot.com.br/2013/11/excel-nao-atualiza-as-formulas.html


Shura16, bom dia.

Obrigado pela resposta.

Essa solução seria viável se eu não utilizasse a fórmula =SE, porque quando eu preencho na célula Liberado o Horário só atualiza se eu clicar.

Para melhor entendimento, segue em anexo a planilha. A fórmula =se(""="Liberado";AGORA();0), encontra-se nas células pintadas em vermelho. As células pintadas em verde serão preenchidas com Liberado!

Obrigado!

Anexos

© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal