[ironie]Ich liebe Excel[/ironie]
So, zum Thema. Ich habe unfreiwilig den Job gekriegt ein VBA-Code zu schreiben um Excel-Sheets in CSV zu wandeln, damit diese anderorts automatisiert über sqlldr eingelesen werden können.
Soweit so gut, das geht grundsätzlich. Doch leider ist Excel so bedinungsfreundlich, dass alle Feldformate eins zu eins exportiert werden. Je nachdem, kommt ein Datum dann als 3.11.2011 oder 11/1/2011 oder sonstwas raus. Für den sqlldr muss ich aber das Datum angeben, also will ich ein Datum IMMER im gleichen Format.
Das hab ich jetzt mit Hickhack halbwegs hingkriegt. Jetzt scheitert es bei den Zahlen, die in Excel natürlich mal mit Tausendertrennzeichen und mal ohne Trennzeichen daherkommen. Dementsprechend erscheint im csv 123456.7 oder "123,456.7".
Ich kann jetzt natürlich jedes Excel-Sheet vor dem SaveAs(pathCsv, xlCSV) umformatieren. Dass kanns aber irgendwie auch nicht sein.
Kennt jemand ein Weg, wie man ein Sheet ins CSV-Format bringt mit Formatdefinitionen?
So, zum Thema. Ich habe unfreiwilig den Job gekriegt ein VBA-Code zu schreiben um Excel-Sheets in CSV zu wandeln, damit diese anderorts automatisiert über sqlldr eingelesen werden können.
Soweit so gut, das geht grundsätzlich. Doch leider ist Excel so bedinungsfreundlich, dass alle Feldformate eins zu eins exportiert werden. Je nachdem, kommt ein Datum dann als 3.11.2011 oder 11/1/2011 oder sonstwas raus. Für den sqlldr muss ich aber das Datum angeben, also will ich ein Datum IMMER im gleichen Format.
Das hab ich jetzt mit Hickhack halbwegs hingkriegt. Jetzt scheitert es bei den Zahlen, die in Excel natürlich mal mit Tausendertrennzeichen und mal ohne Trennzeichen daherkommen. Dementsprechend erscheint im csv 123456.7 oder "123,456.7".
Ich kann jetzt natürlich jedes Excel-Sheet vor dem SaveAs(pathCsv, xlCSV) umformatieren. Dass kanns aber irgendwie auch nicht sein.
Kennt jemand ein Weg, wie man ein Sheet ins CSV-Format bringt mit Formatdefinitionen?