Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
944to948
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
944to948
944to948
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Workbooks.OpenText - Datumsformat

Workbooks.OpenText - Datumsformat
22.01.2008 13:30:56
Rainer
Liebe XL-ler!
Ich versuche seit geraumer Zeit einen Fehler bei der Umwandlung von Datumsangaben zu finden.
Aus einer SQL-Abfrage wird eine XL-Datei im TXT Format gespeichert. Diese öffne bzw. bearbeite ich mittels VBA, zum Schluss speichere ich die Datei als normale XLS-Datei. Grundsätzlich wird alles richtig gemacht, auch die Pivot-Tabelle etc ist korrekt.
Allerdings muss immer wieder bei der fertigen Datei für Details in der Datentabelle nachgeschaut werden. Hier kann dann nicht nach den Datums-Spalten gefiltert werden, obwohl die Anzeige auf den ersten Blick zwar richtig steht, aber die Werte als Text und nicht als Datum formatiert sind.
Habe schon einiges herumprobiert (auch Formatierung im SQL-Query Analyser). Wenn ich das einlesen "händisch" durchführe und den Makrorecorder mitlaufen lasse, funktioniert das AutoFiltern korrekt. Starte ich den aufgezeichneten Code mit der selben Datei, kann ich nicht mehr filtern. Das Datum wird nicht mehr als solches erkannt, sondern als Text ausgegeben.
Hier der Codeausschnitt, der durch das Aufzeichnen entsteht:
Workbooks.OpenText Filename:= _
"\\servername\..\Datei.xls" _
, Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier _
:=xlDoubleQuote, Tab:=True, FieldInfo:=Array(Array _
(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8 _
, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), _
Array(15, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1), Array( _
21, 1), Array(22, 1)), TrailingMinusNumbers:=True
Excel 2003 – aktuellste Patches
Wenn ich eine Datumszelle z.B. mit F2 aktiviere und danach ENTER drücke, wir es korrekt in ein Datum umgewandelt. Dies ist bei 20-30.000 Zeilen und 2 Datumsspalten natürlich ein zusätzliche Aufwand, auch wenn ich es z.B. mit einer Schleife / for each .. durchlaufen lasse. Das muss sich doch beim Einlesen abfangen lassen!
Kennt jemand das Problem?
Danke für eure Hilfe!
Rainer

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Workbooks.OpenText - Datumsformat
22.01.2008 13:36:04
Renee
Hi Rainer,
Wenn du per VBA ein Datum in einem Filter setzen willst, dann funktioniert das so (Beispiel Datum in Spalte A):

Sub tiler()
Dim Filterdatum As Date
Filterdatum = InputBox("Bitte geben Sie ein Datum ein: ")
Selection.AutoFilter Field:=1, Criteria1:="


GreetZ Renée

AW: Workbooks.OpenText - Datumsformat
22.01.2008 13:40:34
Rainer
Hallo Renée!
Danke für die schnelle Antwort! Die Datei wird von mir täglich erstellt und auf einem Share für div. Auswertungen zur Verfügung gestellt. Wenn ein User bestimmte Details haben möchte, verwendet er das ganz normale AutoFiltern, um an die gewünschten Daten zu gelangen. Dabei wird das Datumsformat benötigt!
LG
Rainer

Anzeige
AW: Workbooks.OpenText - Datumsformat
22.01.2008 13:37:00
Rudi
Hallo,
gib mal unter FieldInfo:= bei der entsprechenden Spalte eine 4 als Datentyp an.
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Nachfrage
22.01.2008 13:39:00
Rudi
Hallo,
warum öffnest du eine .xls mit Opentext?
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

AW: Workbooks.OpenText - Datumsformat
22.01.2008 13:44:00
IngGi
Hallo Rainer,
du hast in den Array-Angaben für alle 22 Spalten eine 1 als zweite Zahl stehen. Damit legst du für alle 22 Spalten als Datentyp Text fest. Versuche es für die Datumsspalten einmal mit einer 3. Die steht für den Datentyp Datum mit der Reihenfolge Tag, Monat, Jahr.
Gruß Ingolf

Anzeige
Danke! Workbooks.OpenText - Datumsformat
22.01.2008 14:09:00
Rainer
Lieber Rudi!
Lieber Renée!
Lieber Ingolf!
Danke für eure rasche AntwortInfo! Der Datentyp 4 in "Array(4, 4)" bzw. "Array(5, 4)" war der richtige Hinweis! Interessanterweise hat die zuerst probierte 3 nicht alle Zellen richtig formatiert, ein Teil war richtig, ein Teil noch immer Text ...
Der Vollständigkeit halber noch die Frage von Rudi:
Die SQL-Datei wird als ANSI/Tabstoppgetrennt und gleich mit der Endung ".xls" exportiert. Somit muss ich meines Wissens immer das Workbooks.OpenText verwenden. (so zeigt es auch immer die Aufzeichnung).
Herzlichen Dank! Ihr habt mir wirklich sehr geholfen!
Rainer
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige