Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datum nach Änderung aktualisieren

Datum nach Änderung aktualisieren
10.02.2021 10:11:51
HaderM
Guten Morgen Excelspezialisten,
ich hoffe, dass ihr mir helfen könnt. Ich habe eine Arbeitsmappe mit mehreren Tabellenblättern. Jetzt möchte ich, dass wenn sich der Wert in C3 ändert (in der Zelle befindet sich ein Verweiß also wird der Wert nicht manuel geändert), dass in die Zelle F6 das heutige Datum geschrieben wird.
Ich hoffe ich konnte es so einigermaßen Beschreiben, was mein Problem ist.
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum nach Änderung aktualisieren
10.02.2021 10:17:02
Klaus
Hallo Hader,
erster Impuls: das geht nicht.
Es gibt einige Lösungen ohne VBA, die ich aber eher als esotherisch bezeichnen würde - das hat mit Iteration usw. zu tuen, davon rate ich ab.
VBA selbst überprüft nicht, ob sich der Inhalt einens Verweises ändert. Um es dennoch zum Laufen zu bringen, müsste man einen von zwei Wegen gehen:
1) Der Verweis geht ja irgendwo hin. Wenn DORT geändert wird, über Change das Datum abfragen.
2) Das Ergebniss des Verweis ändert sich bei jedem "calculate". Man könne den alten Wert von C3 irgendwo zwischenspeichern (in einer Variable oder einer anderen Zelle) und bei jedem Calculate-Ereigniss abfragen ob eine Änderung kam.
Ich helfe gern bei der VBA Lösung, wenn ich eine Mustertabelle bekomme.
LG,
Klaus M.
Anzeige
AW: Datum nach Änderung aktualisieren
10.02.2021 10:34:12
HaderM
Hallo Klaus M.
Ich wollte mit dem Kriterum VBA nein eigendlich nur andeuten, dass ich mich zwar mit Excel so an sich auskenne aber keine VBA Kenntnisse habe. Natürlich können wir das Problem über VBA lösen, wenn sie mich anleiten. Ich habe eine sehr abgespeckte Variante meiner Arbeitsmappe hochgeladen.
https://www.herber.de/bbs/user/143785.xlsm
Anzeige
AW: Datum nach Änderung aktualisieren
10.02.2021 13:16:27
Klaus
Hi Hader,
hier im Forum sagen wir gern "du" zueinander, kannst mich also gern mit Vornamen ansprechen. Ich bin jetzt grad sehr beschäftigt, schaue mir deine Datei aber heute Nachmittag an und bin zuversichtlich dass ich eine Lösung zaubern kann.
LG,
Klaus M.
AW: Datum nach Änderung aktualisieren
10.02.2021 14:34:36
Klaus
Hi Hader,
rechsclick auf "1" (den Tabellenblattreiter), "Code anzeigen" und folgendes hinein kopieren:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$9" Then Range("F6").Value = Date
End Sub

Anzeige
AW: Datum nach Änderung aktualisieren
10.02.2021 14:50:54
HaderM
Hallo Klaus,
ich bin der Markus.
Deine Formel funktioniert sobald ich in D9 eine änderung handisch vornehme.
Ich möchte gerne, sobald sich C3 ändert, dass das Datum gesetzt wird. C3 ändert sich durch die Eingabe die ich in dem Tabellenblatt Übersicht in der Spalte G vornehme. Es ist aber auch so aufgebaut, sobald ein neuer Datensatz generiert wird in der Tabelle Übersicht wird das Tabellenblatt 1 kopiert und ich muss nur in das Feld D9 dann die 2 eingeben und alle meine Felder auf dem neuen Tabellenblatt beziehen dann die Informationen die sich im neuen Datensatz befinden. Deswegen dachte ich mir, dass das Datum ins Feld F6 geschrieben wird sobald sich C3 ändert, da das die letzte Änderung ist die vorgenommen wird und das Projekt dann auch wirklich abgeschlossen ist.
Ich hoffe, das ist jetzt nicht zu verwierend geschrieben.
LG
Markus
Anzeige
leider keine Zeit ....
11.02.2021 11:51:54
Klaus
.... daher setzte ich die Anfrage wieder auf "offen".
LG,
Klaus
AW: Datum nach Änderung aktualisieren
11.02.2021 17:26:16
Yal
Hallo Markus,
ohne Klaus zu viel vorzunehmen, aber sodass Du nicht bis abend warten muss.
Wie von Klaus gesagt, aber bitte diesen Code in den Code-pane von "Übersicht" eintragen, nicht von "1" (oder "2", oder...). Es geht nämlich um die Änderung, die in "Übersicht stattfinden.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim WSname  As String
If Target.Column = 4 Then 'wenn Änderung in Spalte D stattgefunden hat
WSname = CStr(CInt(Target.EntireRow.Range("A1").Value)) 'Blatt-Name in Spalte A der  _
betroffenen Zeile lesen
If WS_exists(WSname) Then 'Exisitiert das Blatt
'wenn ja:
Worksheets(WSname).Range("F6").Value = Date
Else
'wenn nicht:
MsgBox "Ein Angebot/Blatt mit der Name """ & WSname & """ wurde nicht gefunden.",  _
vbOKOnly
End If
End If
End Sub
Private Function WS_exists(WSname As String) As Boolean
On Error Resume Next 'bei Fehler, Überspringen (z.B. Blatt nicht gefunden). WS_exists bleibt  _
dann auf Default-Wert "false"
WS_exists = Len(Worksheets(WSname).Name) > 0 'immer "True", wenn das Blatt existiert
End Function
Der Code liest sich -mit ein Bischen Übung- wie ein Roman. Der Anfang ist schwierig, aber es lohnt sich.
Viel Erfolg
Yal
Anzeige
AW: Datum nach Änderung aktualisieren
15.02.2021 08:47:12
HaderM
Hallo Yal,
leider bin ich erst heute dazu gekommen deine Formel aus zu probieren, leider funktioniert es be mir nicht. Kann der Fehler evt. daran liegen, dass ich die die Taabelle Übersicht als Tabelle formatiert habe?
LG Markus
AW: Datum nach Änderung aktualisieren
15.02.2021 09:28:56
Yal
Hallo Markus,
nein, daran sollte es nicht liegen.
Es handelt sich um den Ereignis Worksheet_Change, spricht, es startet, wenn Du von Übersicht auf eine anderen Tab wechselst.
VG
Yal
Anzeige
AW: Datum nach Änderung aktualisieren
15.02.2021 12:41:19
HaderM
Hallo Yal,
habe den Fehler entdeckt. Die Änderung findet nicht in Spalte D sondern F statt. Habe ich in deiner Formel angepasst, jetzt funktioniert es einwandfrei. Ich danke dir für die Hilfe.
VG
Markus
Vielen Dank für die Rückmeldung. oT
16.02.2021 11:29:32
Yal
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Datum in Excel automatisch aktualisieren bei Änderung


Schritt-für-Schritt-Anleitung

Um das Datum in Excel automatisch zu aktualisieren, wenn sich der Inhalt einer bestimmten Zelle ändert, kannst Du den folgenden VBA-Code verwenden. Dieser Code funktioniert nur in Microsoft Excel, da er auf VBA basiert.

  1. Öffne die Excel-Datei, in der Du das Datum automatisch aktualisieren möchtest.

  2. Rechtsklicke auf den Reiter des Tabellenblatts, in dem die Änderung stattfinden soll (z.B. "Übersicht").

  3. Wähle "Code anzeigen" aus dem Kontextmenü.

  4. Kopiere den folgenden VBA-Code in das Codefenster:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Target.Column = 6 Then ' Wenn Änderung in Spalte F stattgefunden hat
           Range("F6").Value = Date ' Aktuelles Datum in Zelle F6 setzen
       End If
    End Sub
  5. Schließe das VBA-Fenster und teste die Funktion, indem Du eine Änderung in der Spalte F vornimmst. Das Datum in Zelle F6 sollte nun automatisch aktualisiert werden.


Häufige Fehler und Lösungen

  • Fehler: Das Datum wird nicht aktualisiert.

    • Lösung: Überprüfe, ob der richtige Spaltenindex im Code steht. Wenn Du in Spalte F Änderungen vornimmst, sollte der Code If Target.Column = 6 Then lauten.
  • Fehler: Der Code läuft nicht.

    • Lösung: Stelle sicher, dass Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center und aktiviere die Makros.
  • Fehler: Das Datum wird nicht in der gewünschten Zelle angezeigt.

    • Lösung: Ändere Range("F6").Value in die Adresse der gewünschten Zelle.

Alternative Methoden

Wenn Du VBA vermeiden möchtest, gibt es auch einige Formeln, die Dir helfen können, das Datum der letzten Änderung anzuzeigen:

  1. Verwende die Formel =WENN(A1<>B1;HEUTE();B1): Diese Formel aktualisiert das Datum in der Zelle, wenn sich der Wert in A1 ändert, und zeigt sonst den vorherigen Wert in B1 an.

  2. Nutze die Funktion =JETZT(): Dies gibt das aktuelle Datum und die Uhrzeit zurück, wird aber bei jeder Berechnung in Excel aktualisiert, was nicht immer gewünscht ist.


Praktische Beispiele

  1. Letzte Änderung in Zelle anzeigen: Wenn Du in Zelle A1 einen Wert änderst, kannst Du in Zelle B1 das Datum der letzten Änderung mit der Formel =WENN(A1<>"";HEUTE();"") anzeigen.

  2. Datum automatisch aktualisieren in einer Tabelle: Wenn Du eine Tabelle hast, in der Du regelmäßig Daten änderst, kannst Du den VBA-Code anpassen, um das Datum in einer bestimmten Zelle der Tabelle zu setzen.


Tipps für Profis

  • Nutze die Worksheet_Change-Ereignisprozedur: Dies ist der effektivste Weg, um auf Änderungen in einer Zelle zu reagieren, ohne dass Du ständig Formeln anpassen musst.

  • Arbeite mit benannten Bereichen: Wenn Du häufig mit bestimmten Zellen arbeitest, kannst Du diesen einen Namen geben und ihn im Code verwenden, was die Wartung erleichtert.

  • Teste Deinen Code gründlich: Achte darauf, verschiedene Szenarien zu testen, um sicherzustellen, dass der Code auch bei unvorhergesehenen Änderungen funktioniert.


FAQ: Häufige Fragen

1. Wie kann ich in Excel das Datum automatisch aktualisieren, wenn sich eine Zelle ändert? Du kannst dies erreichen, indem Du den Worksheet_Change-Event in VBA verwendest. Siehe die Schritt-für-Schritt-Anleitung.

2. Funktioniert das auch ohne VBA? Ja, es gibt Formeln, die das Datum anzeigen können, aber sie sind nicht so dynamisch wie die VBA-Lösung.

3. Was mache ich, wenn mein Datum nicht aktualisiert wird? Überprüfe Deine Makroeinstellungen und stelle sicher, dass der Code korrekt auf die richtige Zelle verweist.

4. Kann ich das Datum der letzten Änderung in einer Fußzeile anzeigen? Ja, Du kannst dies mit einem VBA-Code erreichen oder die Funktion für die letzte Speicherung nutzen, um das Datum anzuzeigen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige