Eintragen der aktuellen Zeit in aktive Zelle

Hallo Experten,

ich habe folgendes Problem und bin leider totaler Anfänger mit Makros etc.:

Ich möchte über eine Schaltfläche die aktuelle Zeit in die gerade aktive Zelle einfügen. Ich habe dafür folgendes einfaches Makro:

Sub Zeit aktualisieren()

ActiveCell.Formula = „= NOW()“

End Sub

Das klappt eigentlich ganz gut. Die Zeit wird mit Klick auf die Schaltfläche in die aktive Zelle eingetragen. Aber wenn ich jetzt eine neue Zelle aktiviere, um dort eine neue Zeit mit der Schaltfläche einzutragen, wird auch die erste Zeit/Zelle mit der neuen Zeit überschrieben.
Das soll natürlich nicht so sein.

Was mache ich falsch, bzw. wie muss der Code aussehen, damit das nicht passiert?

Vielen Dank

Hallo Oliver,

leider habe ich keinerlei Erfahrung mit Makros im Excel. Deshalb kann ich dir nicht helfen.

Weiß ich leider auch nicht. Hatte das Problem noch nicht.
D.K.

Hallo Oliver,

Problem ist dabei, dass mit der Eingabe neuer Werte und Enter auch automatisch alle Formeln im Tabellenblatt neu berechnet werden. Da sich die aktuelle Zeit ändert, wird die natürlich angepasst.
Lösung daher über „Kopieren“ und „Einfügen Werte“ an der eben angeklickten Stelle. Ich hab´s mal rein geschrieben. Außerdem habe ich noch eine automatische Anpassung der Spaltenbreite vorgenommen.

Sub ZeitAktualisieren()
'Aktuelle Zeit einfügen
ActiveCell.Formula = „= NOW()“
'Formel durch Wert ersetzen
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Automatische Spaltenbreite
Selection.Columns.AutoFit
End Sub

Gruß
Archimedes

Moin!

Du fügst mit Deinem Makro ja eine Formel ein, die immer „Jetzt“ berechnet. Startest Du den Makro erneut, berechnet Excel die Formel erneut, und deshalb ändert sich auch in der ersten Zelle die Zeit wieder - eben auf das neue „Jetzt“.

Wenn Du den Wert nur einmal ermitteln und dann aber in den alten Zellen ‚für immer‘ beibehalten willst, mußt Du Dein Makro noch um den Schritt kopieren+Werte einfügen ergänzen:

Sub Zeit_aktualisieren()

ActiveCell.Formula = „= NOW()“
ActiveCell.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False

End Sub

Vielen lieben Dank Tina und Archimedes für die schnelle Hilfe. Jetzt klappt alles so wie es sein soll!

VG
Oliver

es tut mir Leid, bin überfragt