Clever-Excel-Forum

Normale Version: Datumsformat in .txt / .csv-File
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Tag mieinander
ich schreibe in ein TXT-File Daten von der Zelle. Eine Spalte enthält Datumzahlen (z.B. 06.02.2020). Wie kann ich diese importieren und ein berechenbares Datumformat haben. Irgendwann ging ein Datum so in das Textfile #06.02.2020# und in der Tat war es auf der Zelle auch ein Datumsformat. Leider weiss ich nicht, wie ich das einmalig hingekriegt habe, wenn ich den string mit #06.02.2020# in das TXT-File bewusst schreibe, dann kommt es leider auch so wieder zurück. Oder müsste ich das Datum als Zahl in das File ablegen und dann die Zelle formatieren. 
Was habe ich da für Möglichkeiten (Einstellungen usw.)
Vielen Dank für Eure immer geschätzten Hilfen. 
Gruss
Stefan Blush
Hallo Stefan,

wenn du die .csv-Datei mit PQ importierst, erkennt das Programm automatisch das Datumsformat. Bei deiner XL-Version musst du dir das kostenlose AddIn PowerQuery von der MS-Seite runterladen.
Vielen Dank, aber ich habe nur Excel zur Verfügung und eine TXT-Datei. Im Geschäft ist kein anderes Programm verfügbar. Geht es nicht anders?
PowerQuery (PQ) ist ein AddIn für Excel. Ab Version 2016 bereits enthalten; bei deiner Version musst du es installieren.

Wie sieht denn dein Import der .csv aus? Zeig doch bitte eine Beispieldatei (.xlsx - kein Bildchen!). https://www.clever-excel-forum.de/Thread...ng-stellen
Guten Tag Günther
Ich kann das leider nicht exportieren. Aber ich lade alles in ein Array im Format "12.05.2020" und dann wird es als Array in die Tabelle geladen. Das ist auch eine Sache der Performance. Vielleicht müsste ich es im Format "#2020-05-12# abspeichern?
Gruss
Stefan
Sorry, ich verstehe nicht, was du meinst. Du importierst eine .csv ins Excel; hier wird dir, so ich dich richtig verstehe, das Datumsformat nicht korrekt angezeigt? Wie "importierst" du die Datei? Mit Excel-Bordmitteln oder kopierst du sie einfach in ein Tabellenblatt rein? Dann könnte eventuell noch Text-in-Spalten helfen. Diese Fkt. findest du im Menü Daten.
Ja, ich schreibe aus dem TXT-File die Daten in ein Array und nachher wird es auf einmal in die Tabelle eingefügt aus dem Array. Es sind also keine Formatierungen im Array ablegbar. Wenn ich quasi Zelle für Zelle importieren würde, dann könnte ich das Format bestimmen. Doch so - und es muss schnell gehen - muss ich wohl die Spalte im nachhinein wieder formatieren.

vielleicht muss ich mit .TextToColumns arbeiten?
Hallöchen,

Problem wird wohl der Typ des Arrays sein. Du wirst hier ein String-Array erhalten und das will nicht so richtig. Da helfen dann im Code auch nicht die Tricks wie Text in Spalten oder Multiplikation mit 1. Manuell sollte es aber gehen.

Mit Code auch, aber dann musst Du wahrscheinlich die Daten in ein zweites Array übertragen. Hier mal was zum Spielen, in A1:A3 hab ich 3 Daten.

Code:
Option Explicit

Sub test1()
Dim arrTemp
arrTemp = Range("A1:A3").Value
Range("B1:B3").Value = arrTemp
End Sub

Sub test2()
Dim arrTemp(1 To 3, 1 To 1) As String, iCnt%
For iCnt = 1 To 3
arrTemp(iCnt, 1) = Cells(iCnt, 1).Value
Next
Range("C1:C3").Value = arrTemp
End Sub

Sub test3()
Dim arrTemp(1 To 3, 1 To 1) As String, iCnt%, arrVal(1 To 3, 1 To 1) As Date
For iCnt = 1 To 3
arrTemp(iCnt, 1) = Cells(iCnt, 1).Value
Next
For iCnt = 1 To 3
arrVal(iCnt, 1) = arrTemp(iCnt, 1)
Next
Range("D1:D3").Value = arrVal
End Sub
Danke an Euch, werde mal verschiedene Optionen testen und in der Tat wir haben auch PowerQuery :)
Gruss
Stefan1
Hallo Stefan,

siehe dazu auch mal hier.

Gruß Uwe