Stránka 1 z 1

Excel - čas změny

Napsal: 24 bře 2014 11:06
od bloom
Ahoj, sestavil jsem makro, které kopíruje buňky na nový list, pokud dojde k jejich změně. Kód je následující:

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

Set KeyCells = Range("B8:K8")

If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
Range("B8:K8").Copy
With Sheets("List2").Range("A" & Rows.Count).End(xlUp).Offset(1)
.PasteSpecial Paste:=xlPasteColumnWidths
.PasteSpecial Paste:=xlPasteValues
End With
Application.CutCopyMode = False

End If
End Sub


Neporadil by mi někdo, prosím, s tím, co mám do kódu vložit za funkci, aby se na novém listu vedle zkopírovaných buněk objevil také čas, kdy došlo ke změně buňky na původním listě? Díky.

Re: Excel - čas změny

Napsal: 24 bře 2014 20:40
od cmuch
Před end with přidej toto

Kód: Vybrat vše

.Offset(0, 10) = Now


--- Doplnění předchozího příspěvku (24 Bře 2014 20:46) ---

Nebo by šlo i takto upravit

Kód: Vybrat vše

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

 Set KeyCells = Range("B8:K8")

 If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
  With Sheets("List2").Range("A" & Rows.Count).End(xlUp)
    Range("B8:K8").Copy Destination:=.Offset(1)
    .Offset(1, 10) = Now
  End With
 End If
End Sub