Wie werden Datum und Uhrzeit automatisch aufgezeichnet, wenn sich die Zelle ändert?
Es ist für uns einfach, statisches Datum und Uhrzeit manuell einzufügen oder ein dynamisches Datum, das sich mit der Systemzeit ändert, mit einer Formel einzufügen. Wenn Sie Datum und Uhrzeit automatisch aufzeichnen möchten, wenn Sie Werte ändern oder eingeben, kann dieses Problem etwas anders sein. In diesem Artikel können Sie diese Aufgabe jedoch mit den folgenden Schritten lösen.
Zeichnen Sie Datum und Uhrzeit automatisch auf, wenn sich die Zelle mit VBA-Code ändert
Zeichnen Sie Datum und Uhrzeit automatisch auf, wenn sich die Zelle mit VBA-Code ändert
Ich habe beispielsweise einen Wertebereich. Wenn ich jetzt neue Werte in Spalte B ändere oder eingebe, möchte ich, dass das aktuelle Datum und die aktuelle Uhrzeit in Spalte C automatisch aufgezeichnet werden, wie im folgenden Screenshot gezeigt:
Sie können diese Aufgabe mit folgendem VBA-Code beenden. Bitte machen Sie Folgendes:
1. Halten Sie die Taste gedrückt ALT + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen-Fenster.
2. Wählen Sie dann links Ihr verwendetes Arbeitsblatt aus Projekt ExplorerDoppelklicken Sie darauf, um das zu öffnen ModulKopieren Sie anschließend den folgenden VBA-Code und fügen Sie ihn in das leere Modul ein:
VBA-Code: Datum und Uhrzeit werden automatisch aufgezeichnet, wenn sich die Zelle ändert
Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140722
Dim WorkRng As Range
Dim Rng As Range
Dim xOffsetColumn As Integer
Set WorkRng = Intersect(Application.ActiveSheet.Range("B:B"), Target)
xOffsetColumn = 1
If Not WorkRng Is Nothing Then
Application.EnableEvents = False
For Each Rng In WorkRng
If Not VBA.IsEmpty(Rng.Value) Then
Rng.Offset(0, xOffsetColumn).Value = Now
Rng.Offset(0, xOffsetColumn).NumberFormat = "dd-mm-yyyy, hh:mm:ss"
Else
Rng.Offset(0, xOffsetColumn).ClearContents
End If
Next
Application.EnableEvents = True
End If
End Sub
3. Speichern und schließen Sie diesen Code, um zum Arbeitsblatt zurückzukehren. Wenn Sie nun den Zellenwert ändern oder neue Daten in Spalte B eingeben, werden Datum und Uhrzeit automatisch in Spalte C aufgezeichnet.
Anmerkungen:
1. Im obigen Code können Sie die Option „B: B.”Zu einer anderen Spalte, in der Sie die Zellenwerte in diesem Skript ändern möchten: Setzen Sie WorkRng = Intersect (Application.ActiveSheet.Range ("B: B"), Target).
2. Damit xOffsetSpalte = 1 Skript können Sie Datum und Uhrzeit in die erste Spalte neben Ihrer Spalte mit dem sich ändernden Wert einfügen und aktualisieren. Sie können die Nummer 1 in andere Zahlen ändern, z. B. 2,3,4,5. Dies bedeutet, dass das Datum eingefügt wird zweite, dritte, vierte oder fünfte Spalte neben der Spalte mit den geänderten Werten.
3. Wenn Sie einen Wert in der geänderten Spalte löschen, werden auch Datum und Uhrzeit entfernt.
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!