Datum- och Tidstämpling

Här visas en teknik för att registrera när inmatning/ändring av värden sker. Det som intressant är hur den s k Intersect-metoden används i sammanhanget.

Metoden returnerar ett cellområde, vilket representerar den rektangulära skärningen mellan två eller fler cellområden.

Koden ska placeras i den arbetsbladsmodul som registreringen ska ske i, därav händelsen Worksheet_Change(ByVal Target As Range)


Nedan visas utgångsläget:

 

När värden matas in i cellområdet så körs följande kod:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rgOmrade As Range
 

Application.EnableEvents = False
 

Set rgOmrade = Range("A2:C10")

'Om inte skärningen mellan aktiv cell och det önskade cellområdet
'är tom så ange datum- och tid i kolumn D (4) på samma rad
'som inmatning/ändring sker i.
If Not Intersect(Target, rgOmrade) Is Nothing Then
Cells(Target.Row, 4).Value = CStr(Now())
End If

Application.EnableEvents = True

End Sub

 

Resultatet blir följande: