Cześć,
Pracuję nad niniejszym makrem:
Option Explicit
Private PoprzedniaWartosc
Private Sub Workbook_Open()
PoprzedniaWartosc = ActiveCell.Value
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
PoprzedniaWartosc = ActiveCell.Value
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
PoprzedniaWartosc = ActiveCell.Value
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name <> "Historia Zmian" Then
Dim NowyWiersz As Integer
NowyWiersz = Sheets("Historia Zmian").Range("A1").CurrentRegion.Rows.Count + 1
Sheets("Historia Zmian").Cells(NowyWiersz, 1).Value = Application.UserName
Sheets("Historia Zmian").Cells(NowyWiersz, 2).Value = Now
Sheets("Historia Zmian").Cells(NowyWiersz, 3).Value = Sh.Name
Sheets("Historia Zmian").Cells(NowyWiersz, 4).Value = Target.Address
Sheets("Historia Zmian").Cells(NowyWiersz, 5).Value = PoprzedniaWartosc
Sheets("Historia Zmian").Cells(NowyWiersz, 6).Value = Target.Value
Sheets("Historia Zmian").Cells.Columns.AutoFit
End If
End Sub
Zależy mi na rejestracji kroków wykonywanych przez użytkowników w arkuszach (kto, co kiedy jak) - taki swoisty audit trail.
Z tym tylko aby audit trail był chroniony przed modyfikacja/usunięciem. Tak aby nikt nie mógł modyfikować generowanej przez makro, historii zmian.
Proszę o wsparcie - macie jakiś pomysł?
Z góry dzięki