OK klingt schon mal gut. Aber wenn ich verschiedene CSVs einlesen möchte, dann müsste ich für jedes Sheet eine extra Verbindung + INI anlegen, oder?
ocinside
Erstellt: 12:21 am 19. Juni 2013
Du müßtest das direkt bei der ODBC Verbindung vorgeben. Ich hatte das mal mit OleDB über die schema.ini Datei gelöst, wo du dann in der schema.ini jede einzelne Spalte mit: Col1=XYZ1 Float Col2=XYZ2 Integer Col3=XYZ3 LongChar etc. eindeutig formatierst.
OberstHorst
Erstellt: 11:23 am 19. Juni 2013
zusammen,
ich habe ein etwas "exotischeres" Problem und hoffe, dass mir hier jemand helfen kann.
Ich frage per SQL via ODBC direkt auf CSV-Dateien ab. Theoretisch funktioniert das auch alles super. Praktisch habe ich allerdings das Problem, dass der Treiber mir aus welchen Gründen auch immer die Formate vorschlägt. Hin und wieder passt das, aber vereinzelt wird mir in den Metadaten INTEGER angegeben, obwohl FLOAT oder gar CHAR Werte enthalten sind. Wenn in einem solchen Feld (INT) zum Beispiel eine Fließkommazahl steht, werden einfach die Nachkommastellen abgeschnitten.
Ein Workaround wäre die Zahlen alle in Quotes zu setzen. Aber das wäre nicht so die eleganteste Lösung. Per mid(feldname,1) darauf hinzudeuten, dass es sich um ein CHAR Feld handelt funktioniert leider nicht, da die Metadaten wohl bereits vom Treiber vergeben werden.
Vielleicht hat ja jemand eine Idee...
E: PS: Das erstellen der CSV erfolgt per VBA. Vielleicht lässt sich hier schon was drehen?!
(Geändert von OberstHorst um 11:26 am Juni 19, 2013)
×
Copyright 1999 - 2024 by www.ocinside.de - All rights reserved.
Unser PC Forum verwendet Cookies für einen optimalen Service. Durch die Nutzung dieser Webseite erklären Sie sich damit einverstanden, dass wir personenbezogene Daten wie z.B. die IP-Adresse speichern und wir zusammen mit Drittanbietern Cookies verwenden, um personalisierte Anzeigen zur interessengerechten Werbung und weitere externe Inhalte anzuzeigen. Einverstanden? Ja / Nein ImpressumDatenschutzEinstellungen