Página 1 de 1

Data Fixa - Celulas dentro de um Range específico

Enviado: 09 Mar 2017 às 08:51
por ttorres
Olá queridos, tudo bem?

sou iniciante no excel, ainda mais com macros e vb.
Consegui uma solução para preencher a data fixa em uma célula após outra ser preenchida. Minha necessidade é que preciso saber a data em que foi cadastrado aquela informação.

A solução foi essa:
Código: Selecionar todos

    Private Sub Worksheet_Change(ByVal Target As Range)

    Application.EnableEvents = False

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

    If Range("D" & Target.Row).Value = "" Then
    Range("B" & Target.Row).Value = ""
    End If

    Application.EnableEvents = True

    End Sub



O que acontece é que eu só preciso que ela funcione apenas para um intervalo específico D10:D50.
Do jeito que está, o macro vai alterar células que não tem nada haver.

Melhor ainda se houvesse a possibilidade de usar o nome do intervalo ao invés do intervalo.

Dúvida 2:
Existe já alguma solução para funcionar a DESFAZER após utilização do MACRO? Isso também seria muito importante para mim.

Preciso da ajuda de vocês.
Conto com todos!

Re: Data Fixa - Celulas dentro de um Range específico

Enviado: 09 Mar 2017 às 09:07
por osvaldomp
ttorres escreveu: O que acontece é que eu só preciso que ela funcione apenas para um intervalo específico D10:D50.
Experimente o código abaixo.

Dúvida 2:
Existe já alguma solução para funcionar a DESFAZER após utilização do MACRO? Isso também seria muito importante para mim.
A resposta curta é "não". Se você nos informar em que situações precisa "desfazer" talvez alguém possa sugerir outro caminho.
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
 If Intersect(Target, Range("D10:D50")) Is Nothing Then Exit Sub
  If Target.Value = "" Then Target.Offset(, -2).Value = "" Else: Target.Offset(, -2).Value = Date
End Sub

Data Fixa - Celulas dentro de um Range específico

Enviado: 09 Mar 2017 às 09:19
por ttorres
Olá Osvaldo,
resolveu meu problema. Mas só por curiosidade, você poderia me dizer se tem como eu usar ao invés do intervalo, o nome do intervalo?

Re: Data Fixa - Celulas dentro de um Range específico

Enviado: 09 Mar 2017 às 09:32
por osvaldomp
Substitua
Código: Selecionar todos
Range("D10:D50")
por
Código: Selecionar todos
Range("NomeDoIntervalo")