Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1676to1680
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datum und Benutzer letzte Änderung in Spalte

Datum und Benutzer letzte Änderung in Spalte
25.02.2019 20:27:16
Janina
Hallo zusammen,
ich bin auf der Suche nach einem Makro, dass mir anzeigt, wer zuletzt wann eine Änderung in einer Spalte meiner Tabelle vorgenommen hat.
Von Spalte A-Q können meine Kollegen Änderungen vornehmen, das Datum soll in Spalte S und Name der Person in Spalte T via Makro aufgeführt werden.
In jeder Spalte meiner Tabelle.
Ich habe im Forum schon eine fast passende Lösung gefunden, allerdings bezieht das Makro sich nur auf eine Zelle, wenn ich den Bereich erweitere wandert auch die Angabe Name und Datum weiter.
Ich habe schon ziemlich viel herumprobiert, komme aber nicht weiter, da ich noch recht neu in dem Thema bin, ich werde schon ganz verrückt.
Kann mir jemand weiterhelfen?
https://www.herber.de/forum/archiv/1576to1580/1578555_Datum_und_Benutzer_letzte_Aenderung_in_Zelle.html#bottom

Private Sub Worksheet_Change(ByVal Target As Range)
Dim z
On Error GoTo Fehler
If Not Intersect(Range("B:B"), Target) Is Nothing Then
If Target.Row = 1 Then Exit Sub
For Each z In Target
If z.Offset(0, -1)  "" Then
Application.EnableEvents = False
z.Offset(0, 1) = Format(Date, "DD.MM.YYYY")
z.Offset(0, 2) = Environ("Username")
End If
Next
End If
'*** Fehlerbehandlung
Err.Clear
Fehler:
Application.EnableEvents = True
If Err.Number  0 Then MsgBox "Fehler: " & _
Err.Number & vbLf & Err.Description: Err.Clear
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum und Benutzer letzte Änderung in Spalte
25.02.2019 20:36:46
Sepp
Hallo Janina,
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim rng As Range
  
  On Error GoTo Fehler
    
  If Not Intersect(Range("A:Q"), Target) Is Nothing Then
    Application.EnableEvents = False
    If Target.Row > 1 Then
      For Each rng In Intersect(Range("A:Q"), Target)
        Cells(rng.Row, 19) = Format(Date, "DD.MM.YYYY")
        Cells(rng.Row, 20) = Environ("Username")
      Next
    End If
  End If
    
Fehler:
  Application.EnableEvents = True
  If Err.Number <> 0 Then MsgBox "Fehler: " & _
    Err.Number & vbLf & Err.Description: Err.Clear
End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Datum und Benutzer letzte Änderung in Spalte
25.02.2019 20:37:37
Werner
Hallo Janina,
so:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim z As Range
On Error GoTo Fehler
If Target.Row = 1 Then Exit Sub
If Not Intersect(Range("A:Q"), Target) Is Nothing Then
For Each z In Target
Application.EnableEvents = False
Cells(z.Row, 19) = Now
Cells(z.Row, 20) = Environ("Username")
Next
End If
'*** Fehlerbehandlung
Err.Clear
Fehler:
Application.EnableEvents = True
If Err.Number  0 Then MsgBox "Fehler: " & _
Err.Number & vbLf & Err.Description: Err.Clear
End Sub
Ich hab die Abfrage auf ungleich leer raus gemacht, so wird auch protokolliert wenn eine Zelle im Bereich geleert wird.
Gruß Werner
Anzeige

58 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige