Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA Textfeld in Datum mit uhrzeit umwandeln

VBA Textfeld in Datum mit uhrzeit umwandeln
08.11.2017 11:30:06
Bellandi
Hallo zusammen,
ich habe ein Problem was für Euch wahrscheinlich ein Kinderspiel sein wird.
In meiner Tabelle stehen in Spalte "A" Datumswerte mit Uhrzeit zum Beispeil 20.05.2016 11:35:29 jedoch sind diese als Text formatiert und stehen linksbündig.
Ich brauche diese aber als Datum mit Uhrzeit also genauso wie sie bereits dort stehen. Folgender Makro erledigt seine Arbeit prima jedoch löscht er mir die Uhrzeiten heraus die ich aber dringend brauche.... Wie müsste das Makro richtig lauten damit die Uhrzeiten nicht verloren gehen ?
Sub Datum()
' Datum Makro
Columns("a:a").Select
Dim rngCell As Range
On Error Resume Next
For Each rngCell In Selection
If IsDate(rngCell.Value) Then
rngCell.Value = DateValue(rngCell.Value)
End If
Next rngCell
On Error GoTo 0
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Textfeld in Datum mit uhrzeit umwandeln
08.11.2017 12:14:19
Ralf
Hi,
wenn in Spalte A nur solche Angaben stehen, benötigst Du nicht einmal eine Schleife...
Columns("a:a").NumberFormat = "dd/mm/yyyy hh:mm:ss"

AW: VBA Textfeld in Datum mit uhrzeit umwandeln
08.11.2017 12:18:08
Werner
Hallo,
z.B. so:
Sub Datum()
Dim loLetzte As Long, raBereich As Range, raCelle As Range
On Error Resume Next
With Worksheets("Tabelle1")
loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row
Set raBereich = .Range(.Cells(1, 1), .Cells(loLetzte, 1))
For Each raCell In raBereich
If IsDate(raCell.Value) Then
raCell.NumberFormat = "m/d/yyyy h:mm:ss"
raCell.Value = CDate(raCell.Value)
End If
Next raCell
End With
On Error GoTo 0
Set raBereich = Nothing
End Sub
Gruß Werner
Anzeige

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

VBA Textfeld in Datum mit Uhrzeit umwandeln


Schritt-für-Schritt-Anleitung

Um ein Textfeld in Excel, das Datumswerte mit Uhrzeit enthält, in das richtige Datumsformat umzuwandeln, kannst Du den folgenden VBA-Code verwenden. Dieser Code stellt sicher, dass die Uhrzeiten nicht verloren gehen und korrekt angezeigt werden.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.
  3. Kopiere den folgenden Code in das Modul:
Sub DatumMitUhrzeit()
    Dim loLetzte As Long, raBereich As Range, raCell As Range
    On Error Resume Next
    With Worksheets("Tabelle1") ' Ändere "Tabelle1" zu Deinem Tabellennamen
        loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row
        Set raBereich = .Range(.Cells(1, 1), .Cells(loLetzte, 1))
        For Each raCell In raBereich
            If IsDate(raCell.Value) Then
                raCell.NumberFormat = "dd/mm/yyyy hh:mm:ss"
                raCell.Value = CDate(raCell.Value)
            End If
        Next raCell
    End With
    On Error GoTo 0
    Set raBereich = Nothing
End Sub
  1. Schließe den VBA-Editor und kehre zu Excel zurück.
  2. Führe das Makro aus, um die Datumswerte mit Uhrzeit in das korrekte Format umzuwandeln.

Häufige Fehler und Lösungen

  • Fehler: Uhrzeiten werden gelöscht.

    • Lösung: Stelle sicher, dass Du CDate in Deinem Code verwendest, um das Datum und die Uhrzeit korrekt zu konvertieren, wie im obigen Beispiel gezeigt.
  • Fehler: Die Daten werden nicht korrekt angezeigt.

    • Lösung: Prüfe das ursprüngliche Format der Daten. Stelle sicher, dass die Werte als Text formatiert sind und als Datum erkannt werden können.

Alternative Methoden

Falls Du keine VBA-Lösung verwenden möchtest, kannst Du auch die DATUM-Funktion in Excel nutzen, um Datumswerte manuell zu konvertieren:

  1. Angenommen, die Daten stehen in Zelle A1. Verwende die folgende Formel:
    =DATUM(JAHR(A1), MONAT(A1), TAG(A1)) + (A1 - GANZZAHL(A1))
  2. Ziehe die Formel nach unten für die restlichen Zellen.

Praktische Beispiele

Beispiel für die Umwandlung von Text in Datum mit Uhrzeit:

Angenommen, Du hast den Text "20.05.2016 11:35:29" in Zelle A1. Mit dem obenstehenden VBA-Code oder der Excel-Formel wird dieser Text in das Datumsformat 20/05/2016 11:35:29 umgewandelt.


Tipps für Profis

  • Nutze die Format Cells-Option in Excel, um das Datumsformat schnell zu ändern, falls Du keine VBA-Programmierung verwenden möchtest.
  • Verwende Excel VBA Datumsfunktionen, um komplexere Datumsmanipulationen durchzuführen.
  • Teste Deinen Code mit einer Kopie Deiner Daten, um sicherzustellen, dass keine Informationen verloren gehen.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass die Uhrzeiten nicht verloren gehen? Verwende den Code, der CDate verwendet, um sicherzustellen, dass sowohl das Datum als auch die Uhrzeit korrekt umgewandelt werden.

2. Was mache ich, wenn Excel ein Datum nicht erkennt? Überprüfe das Format Deiner Quelldaten. Manchmal ist es notwendig, das Textformat zu ändern, bevor Du die Umwandlung durchführst.

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