Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro Username und Zeitstempel

Forumthread: Makro Username und Zeitstempel

Makro Username und Zeitstempel
WA
Hallo liebe User,
ich sitze da an einem Problem und finde auch keine Lösung!
Ich möchte ganz einfach, sobald die Excel-Datei geschlossen wird, in einer bestimmten Zelle den Usernamen und die Zeit eingefügt werden, sodass man beim öffnen der Datei jederzeit nachvollziehen kann, wer zuletzt die Datei in Bearbeitung hatte.
Der Eintrag sollte auf einem Tabellenblatt "Übersicht" erscheinen und immer weitergezählt bzw. eingetragen werden.
Hier mal das Makro mit dem ich arbeiten wollte, aber es klappt nicht?
Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Zeile = Target.Row
Cells(Zeile, 7) = Application.UserName
Termin = DateSerial(Year(Date), Month(Date), Day(Date))
Cells(Zeile, 8) = Termin
Application.ScreenUpdating = True
End Sub
Danke für die Hilfe im voraus
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Makro Username und Zeitstempel
21.11.2010 17:01:55
Hajo_Zi
Halo Unbekannte(r),
das wirkt aber nur falls Makro aktiv. Unter DieseArbeitsmappe

Private Sub Workbook_BeforeClose(Cancel As Boolean)
' Sicherungen Protokollieren
With Worksheets("Tabelle3")
LoLetzte = IIf(IsEmpty(.Cells(.Rows.Count, 1)), .Cells(Rows.Count, 1).End(xlUp).Row, . _
Rows.Count) + 1
.Cells(LoLetzte, 1) = Now
.Cells(LoLetzte, 2) = Environ("Username")
End With
End Sub

Anzeige
AW: Makro Username und Zeitstempel
21.11.2010 17:05:51
WA
Hallo Hajo,
danke für die superschnelle Hilfe!!!
Wolfgang [davon gibt es viele im Forum, darum WA aus KU ;-) ]
AW: Makro Username und Zeitstempel
21.11.2010 17:09:06
Hajo_Zi
Hallo Wolfgang,
der Name der als Ersteller steht ist das eine, den Namen den Du unter den Beitrag schreibst hat nichts mit dem Namen den Du als Ersteller angibst zu tun., oder fast nichts.
Gruß Hajo
Anzeige
AW: Makro Username und Zeitstempel
21.11.2010 17:07:27
Gerd
Hallo,
..... dann aber auch, wenn garnichts verändert worden ist.
Gruß Gerd
AW: Makro Username und Zeitstempel
21.11.2010 17:11:23
Hajo_Zi
Hallo Gerd,
das war auch die Forderung.
 sobald die Excel-Datei geschlossen wird, in einer bestimmten Zelle den Usernamen und die Zeit eingefügt 

Da steht keine Bedingung.
Gruß Hajo
Anzeige
AW: Makro Username und Zeitstempel
21.11.2010 17:20:26
WA
Hallo Gerd, hallo Hajo,
... genau so war es auch gemeint.
Wenn jemand keine Änderung gemacht hat, dann wird auch bei "Schließen ohne zu Speichern" nichts eingetragen
Wolfgang
;
Anzeige
Anzeige

Infobox / Tutorial

Makro für Username und Zeitstempel in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne Deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Finde das Projekt für Deine Arbeitsmappe im Projekt-Explorer.

  3. Klicke mit der rechten Maustaste auf "DieseArbeitsmappe" und wähle "Code anzeigen".

  4. Füge den folgenden Code in das Codefenster ein:

    Private Sub Workbook_BeforeClose(Cancel As Boolean)
       With Worksheets("Übersicht")
           LoLetzte = IIf(IsEmpty(.Cells(.Rows.Count, 1)), .Cells(Rows.Count, 1).End(xlUp).Row, . _
           Rows.Count) + 1
           .Cells(LoLetzte, 1) = Now
           .Cells(LoLetzte, 2) = Environ("Username")
       End With
    End Sub
  5. Speichere die Datei als Makro-aktivierte Arbeitsmappe (*.xlsm).

  6. Schließe die Excel-Datei und öffne sie erneut, um sicherzustellen, dass der Username und der Zeitstempel korrekt eingetragen werden.


Häufige Fehler und Lösungen

  • Fehler: Der Zeitstempel wird nicht eingetragen.

    • Lösung: Stelle sicher, dass Du die Datei als Makro-aktivierte Arbeitsmappe gespeichert hast. Überprüfe auch, ob Makros in Excel aktiviert sind.
  • Fehler: Der Username wird nicht korrekt angezeigt.

    • Lösung: Überprüfe die Umgebungsvariable, die den Username abruft. Du kannst das mit Environ("USERNAME") testen.

Alternative Methoden

Falls Du keinen VBA-Code verwenden möchtest, kannst Du den Zeitstempel in Excel ohne Makro manuell einfügen. Das geht mit der Funktion =JETZT(), die das aktuelle Datum und die Uhrzeit anzeigt. Dies erfordert jedoch eine manuelle Eingabe und ist nicht automatisiert.


Praktische Beispiele

Ein einfaches Beispiel zur Anwendung des Makros:

  1. Erstelle ein neues Tabellenblatt namens "Übersicht".
  2. Trage in die erste Zeile "Datum" in die Zelle A1 und "Username" in die Zelle B1 ein.
  3. Schließe die Excel-Datei nach dem Hinzufügen von Daten, und öffne sie erneut, um die Einträge zu überprüfen. Der Stempel in Excel wird nun automatisch aktualisiert.

Tipps für Profis

  • Verwende Fehlerbehandlungsmechanismen im VBA-Code, um sicherzustellen, dass Dein Makro auch bei unerwarteten Eingaben stabil bleibt.
  • Experimentiere mit Bedingungen, um festzulegen, wann ein Zeitstempel eingefügt werden soll. Zum Beispiel könntest Du den Zeitstempel nur dann einfügen, wenn Änderungen an der Datei vorgenommen wurden.

FAQ: Häufige Fragen

1. Frage
Wie kann ich den Zeitstempel in einem anderen Format anzeigen?
Antwort: Du kannst das Format des Zeitstempels anpassen, indem Du die Zelle entsprechend formatierst. Zum Beispiel: =TEXT(JETZT(),"DD.MM.YYYY HH:MM").

2. Frage
Funktioniert das Makro in allen Excel-Versionen?
Antwort: Ja, das Makro sollte in Excel-Versionen ab 2007 funktionieren, solange Makros aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige