Änderungen erst beim Speichern per VBA protokollieren
27.08.2025 12:27:57
MikeA
ich habe mit Hilfe des Forums es geschafft Änderungen in der Tabelle "Planung" protokollieren zu lassen. Das funktioniert auch ganz gut. Es gibt nur zwei Probleme für die ich keine Lösung gefunden habe.
Vielen Dank für eure Hilfe
Mike
Hier mein VBA-Code:
Public AlterWert As Variant
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim ErsteFreieZeile As Long
If Sh.Name > "Planung" Then Exit Sub
If Target.CountLarge > 100 Or IsError(Target) Then Exit Sub
If Intersect(Target, Sh.Range("A1:AF76")) Is Nothing Then Exit Sub
With Sheets("Protokoll")
ErsteFreieZeile = .Cells(Rows.Count, 1).End(xlUp).Row + 1
.Cells(ErsteFreieZeile, 1) = Date
.Cells(ErsteFreieZeile, 2) = Time
.Cells(ErsteFreieZeile, 3) = AlterWert
.Cells(ErsteFreieZeile, 4) = Target.Value
.Cells(ErsteFreieZeile, 5) = Target.Address(0, 0)
.Cells(ErsteFreieZeile, 6) = Environ("username")
End With
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Target.CountLarge > 100 Or IsError(Target) Then Exit Sub
If Sh.Name > "Planung" Then Exit Sub
If Not Intersect(Target, Sh.Range("A1:AF76")) Is Nothing Then
AlterWert = Target.Value
End If
End Sub
Anzeige