none
Mudança de Célula RRS feed

  • Pergunta

  • Boa Tarde pessoal!!

    Seguinte galera.. tenho uma planilha e na coluna "D" eu tenho um status, que defini como: Pendente, Resolvindo, Andamento. Esse status é alterado pelo usuário dependendo do status de determinada ação.

    O que queria.

    Eu queria que quando esse status de uma determinada linha da coluna "D" fosse alterado para Resolvido, na mesma linha da coluna "E" aparecer a data e hora em que foi feito essa alteração.

    Eu coloquei o seguinte código:

    Private Sub Worksheet_Change(ByVal Target As Range)

    Application.ScreenUpdating = False
    Data = Date

    For i = 3 To Plan1.Range("A1")

    If Plan1.Cells(i, 4) = "Resolvido" Then
    ActiveCell.Offset(0, 1) = Data
    Else
    ActiveCell.Offset(0, 1) = ""
    End If

    Next i

    Application.ScreenUpdating = True

    End Sub

    Porém o que acontece: Todas as vezes que eu altero qualquer coisa na planilha.. ele roda a macro.. e isso fica demorando bastante.. porque é uma planilha que tem mais ou menos umas 3000 linhas.

    Gostaria da ajuda de vocês galera.

    Forte abraço a todos e uma ótima tarde.




    • Editado AlvinhoKS quarta-feira, 8 de maio de 2013 12:00
    terça-feira, 7 de maio de 2013 20:11

Respostas

  • Private Sub Worksheet_Change(ByVal Target As Range)
        If Intersect(Target, Columns("D")) Is Nothing Then Exit Sub
        
        If Target = "Resolvido" Then
            Application.ScreenUpdating = False
            Cells(Target.Row, "E") = Now
            Application.ScreenUpdating = True
        End If
    End Sub


    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    quarta-feira, 8 de maio de 2013 23:54
    Moderador

Todas as Respostas