Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA Replace-Funktion bei Datum
#1
Hallo zusammen,

in Spalte A meiner Tabelle stehen Uhrzeiten, denen ich das Datum des heutigen Tages hinzufügen möchte. Meine Idee war bisher, das Format der Spalte A mittels
Code:
.columns("A").Numberformat = "dd.mm.yyyy hh:mm:ss"

abzuändern und im Anschluss das nun vor jeder Uhrzeit stehende Datum "00.01.1900" mittels Replace-Funktion durch das heutige Datum zu ersetzen. Aus 
Code:
"00.01.1900 08:53:12"
 soll dann
Code:
"17.07.2018 08:53:12" 
werden.

Meine Funktion hierzu:

Code:
.Columns("A").Replace What:="00.01.1900", Replacement:=Format(Date, "dd.mm.yyyy"), LookAt:=xlPart, SearchOrder:=xlByRows


Problem ist: das Makro läuft durch aber es passiert nichts. Ich hab die Aktion (Strg+H Suchen & Ersetzen) testweise mit dem Makro-Rekorder aufgezeichnet. Bei der Aufzeichnung funktioniert es, möchte ich das Makro aber danach noch einmal ausführen, passiert wieder nichts. 

Der Code aus dem Makro-Rekorder:
Code:
Sub date_replace_test()

' Datum Suchen & Ersetzen

   Selection.Replace What:="00.01.1900", Replacement:="17.07.2018", LookAt:= _
       xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
       ReplaceFormat:=False
End Sub

Über Hilfe würde ich mich sehr freuen, falls es einen eleganteren oder einfacheren Weg gibt, bin ich natürlich auch dafür offen. 

Viele Grüße, vielen Dank und schönen Abend!
dax50
Antworten Top
#2
Hallo,

bei Datum und Uhrzeit handelt es sich um Zahlen. Also muss man das Datum, eine Ganzzahl, zur Zeit, einer Nachkommazahl, hinzuaddieren.

Schreibe in eine leere Zelle das heutige Datum ( Strg+: ), und kopiere diese Zelle anschließend ( Strg+c ).
Markiere nun die Zellen mit der Zeit, anschließend Rechtsklick auf die Markierung, dann Klick auf Inhalte einfügen… .
Nun bei Vorgang die Option Addieren wählen und OK klicken.
Die entsprechende Zellformatierung hast Du ja schon richtig eingestellt.

Gruß Uwe
Antworten Top
#3
hallöchen,

es dürfte reichen, wenn Du das Datum dazu addierst Smile

Arbeitsblatt mit dem Namen 'Tabelle1'
AB
100.01.1900 07:1217.07.2018 07:12

ZelleFormel
B1=A1+HEUTE()
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#4
Big Grin 
Ugh. Wald vor lauter Bäumen...manchmal kann es so einfach sein. Addition hatte ich einfach ausgeblendet und stattdessen mit so Sachen wie =heute()&" "&A1 ausprobiert...natürlich ohne Erfolg. Selbst als in der Zelle zwei Zahlen von einem Leerzeichen getrennt standen, drängte sich mir die Addition noch nicht auf....oh well  :05:

Vielen Dank und gute Nacht!
dax50 :)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: