Excel Datum der Erstellung einfügen
Hallo,
ich habe eine spezielle Frage und bin mir nicht sicher, ob das überhaupt funktioniert.
Ich würde bei Excel gerne in ein Feld einfügen, wann die Zeile erstellt wurde. An sich ist "Datum einfügen" ja relativ einfach, aber das Problem ist, dass sich das Datum automatisch mit ändert.
Ich möchte aber pro Zeile das Erstelldatum einfügen, sodass ich weiß, wann welche Zeile eingefügt bzw. erstellt wurde.
Geht sowas und wenn ja wie?
7 Antworten
Falls Dir die anderen Antworten nicht genügen, erkläre ich Dir mal, wie das mit VBA zu verwirklichen ist.
Angenommen bei Einträgen im Bereich A1:A100 soll das Datum in B1:B100 erscheinen. Dann mache einen Rechtsklick auf den Tabellenreiter (unten, da wo z.B. Tabelle1 steht) und gehe dann auf "Code anzeigen...". In das große Fenster des VBA-Editors, der sich dann öffnet kopierst Du folgenden Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A100")) Is Nothing Then _
Target.Offset(0, 1) = Date
End Sub
Fenster schließen und die Datei als .xlsm speichern, und Makros zulassen.
Hilft Dir das?
DAS kann ich so nicht nachvollziehen.
Bei mir fügt der Code bei irgendeiner Eingabe in Spalte A das Datum in Spalte B ein.
Um es in O einzufügen muss der Code so aussehen:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A100")) Is Nothing Then _
Target.Offset(0, 14) = Date
End Sub
Also bei Offset statt 0,1 die 0,14 (heißt gehe 14 Zellen nach rechts).
Und JA, wenn Du das sortierst, und dabei ALLE Spalten markiert hast, bleibt das Datum richtig zugeordnet.
Wenn das Makro das Datum eingefügt hat, ist es dasselbe, als wenn Du es manuell eingeben hättest.
Oh es geht. Jippie. Ich danke dir recht herzlich.
Witzig ist, dass ich den Quellcode oben verstehe, aber es nciht ändern konnte :)
Danke Danke Danke Danke!
noch ein Problem habe ich gerade festgestellt.
Ich fülle ja die Zeile A bis N aus (also 14 Stück). Mit dem obigen Code werden dahinter dann pro Ziele je ein Datum geschrieben (also 14 Mal das gleiche Datum).
Ich würde es aber gern nur einmal haben, da es ja sonst einfach total unüberischtlich ist.
Wie muss der Code verändert werden, dass NUR in Zeile 14, also O, das Datum steht?
ich habe gerade festgestellt, dass das nur passiert, wenn ich kopierte Zeilen einfüge. Wenn ich die Zeilen A-M selber schreibe wird es nur einmal eingefügt, bei kopieren jedoch 14 Mal o.O
Hier ein Foto dazu:
https://www.dropbox.com/s/cjs1mdlc6tjv825/Screenshot%202014-02-19%2009.14.26.png
Hallo, diese seltsame, interessante, komische Verhalten von Excel war mir auch noch nicht "untergekommen".
Ich halte das schlicht für einen Fehler.
Aber egal, SO sollte es besser klappen.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A100")) Is Nothing Then _
Cells(Target.Row, Target.Column + 14) = Date
End Sub
Klappt es?
P.S.:
Danke fürs ☆
und fürs Kompliment.
☼
Hört isch jetzt nen bissl merkwürdig an wenn ich schreibe:
Schön dass du dein erstes Mal suchr mich hattest ;)
Spaß beiseite:
Klappt jetzt bestens. Ich danke dir wie verrückt.
Hast dir natürlich ☆ verdient ;)
Von Hand geht es sehr schön mit "STRG + Doppelpunkt" wie hier schon beschrieben.
Automatisiert geht es nur vernünftig über VBA, siehe z. B. hier:
Moin!
Für die Arbeitsmappe gibts glaube ich einen Befehl, mit dem man z. B. in der Kopfzeile oder einer best. Zelle das letzte Änderungsdatum eintragen kann.
In Office Excel 2010 (denke mal auch andere Versionen) gibts aber auch unter "Überprüfen" - "Änderungen nachverfolgen", da kannst du dir auf einem extra Blatt alle Änderungen protokollieren lassen, ich denke das wäre einfacher, als in jede Zeile ein Datum eintragen zu lassen. Und auch übersichtlicher. ;)
Ansonsten könnte ich mir vorstellen, dass sich das mit VisualBasic realisieren läßt, da hab ich aber keine Ahnung wie. :)
Danke für die Antwort, aber das geht in meinem Fall nicht. Ich habe eine Tabelle, in der Zeilen dazukommen und wieder wegmüssen.
Trotzdem brauche ich für jede einzelne Zeile ein Erstelldatum.
Das ist mein Problem, da ich sonst das Datum einfach mit Hand geschriben hätte ;)
Mit Strg + Punkt kannst du das aktuelle Datum in eine Zeile einfügen.
Wie es automatisch geht weiß ich nicht, da musst du dann im Notfall programmieren bzw. mal googeln. Das Problem werden sicher schon viele Leute auf der Welt gehabt haben.
Du kannst das Datum manuell einfügen und die Zelle als "Datum" formatieren (nicht "Heute") als kurz, lang oder mit Wochentag Datum.
Danke, aber auch das hilft mir bislang nicht (siehe oben) ;)
Danke. Das habe ich gemacht. Irgendwie wird mir aber das Datum nur in B angezeigt, wenn A leer ist o.O Eigentlich bräuchte ich es andersrum.
Zudem hätte ich das Datum gerne in Zeile O und weiß nicht wie ich es da hinbekomme
PS: Wenn ich die zeilen neu Ordne von A-Z, bleibt das Datum dann trotzdem das Alte?