Avatar billede znogen Nybegynder
24. juni 2008 - 22:10 Der er 9 kommentarer

timestamp ved ændring af data

Hej.
Jeg har googlet mig frem til en løsning, men kan ikke få den til at fungere...

Jeg vil have et timestamp når data ændres i en celle/række.  (kan det godt være en celle med en formel, hvor værdien af formlen ændrer sig?)

På forhånd tak.

denne løsning funker ikke med mine evner:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  With Target
    If .Count > 1 Then Exit Sub
      If Not Intersect(Range("A2:A10"), .Cells) Is Nothing Then
          Application.EnableEvents = False
            If IsEmpty(.Value) Then
              .Offset(0, 1).ClearContents
        Else
          With .Offset(0, 1)
                .NumberFormat = "dd mmm yyyy hh:mm:ss"
                .Value = Now
              End With
            End If
          Application.EnableEvents = True
        End If
      End With
    End Sub
Avatar billede excelent Ekspert
24. juni 2008 - 22:30 #1
Nej koden påvirkes/køres ikke ved ændring af en formelcelle
Hvilken hændelse får værdien til at ændres ?
Avatar billede rosco Novice
25. juni 2008 - 08:19 #2
Kunne dette evt. bruges

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A2:A10"), Target) Is Nothing Then
With Target

Range("C2") = Now
End With
End If
End Sub
Avatar billede rosco Novice
25. juni 2008 - 08:28 #3
(kan det godt være en celle med en formel, hvor værdien af formlen ændrer sig?)

så prøv med

Private Sub Worksheet_Calculate()
Avatar billede rosco Novice
25. juni 2008 - 08:33 #4
Så kan du nøjes med

Private Sub Worksheet_Calculate()
Range("C2") = Now
End Sub
Avatar billede znogen Nybegynder
28. juni 2008 - 10:51 #5
Skal man aktivere koden eller noget?

jeg skriver i A2:A10, men der sker ikke noget.
Avatar billede znogen Nybegynder
28. juni 2008 - 11:01 #6
Kan man skrive koden så en ændring i kolonne A, giver et stamp i kolonne AA -for hver række.
Avatar billede rosco Novice
28. juni 2008 - 22:54 #7
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A:A"), Target) Is Nothing Then
With Target
ActiveCell.Offset(-1, 26).Value = Now

End With
End If
End Sub
Avatar billede znogen Nybegynder
20. juli 2008 - 13:21 #8
Jeg har fået det til at virke.
jeg skulle indsætte koden i arket's vba.

MEN
jeg ville have den til at virke ved ændring af værdi. dvs. hvis en formel ændrer værdi, så skal der komme et timestamp...
Avatar billede znogen Nybegynder
20. juli 2008 - 13:36 #9
dvs. en ændring i kolonne A, som er en formel, giver et stamp i nabokolonne.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester