Hi!
Ich hab da ein laestiges Problem:
Wir muessen online (per ASP) einen Report als Excelformat bereitstellen. Das ist soweit auch kein Problem. Einfach eine CSV Datei ausgeben oder im Header der Datei Excel als Datentyp mitgeben und eine Tabelle im HTMLbody ausgeben sind recht einfache und Ressourcen schonende Loesungen.
Das Problem: Diese Reporte werden von Leuten in ganz Europa gelesen. Wie der erfahrene Programmierer weiss gibt es da ein kleine Abweichung beim Schreiben von Dezimalzahlen. Dazu ist Excel ja so schlau und konvertiert fleissig Zahlen in alles moegliche. Als Beispiel sei mal 1.05 erwaehnt. Wenn ich den Wert 1.05 in einer Zelle habe dann ist das in einem Excel dessen Rechner z.B. auf UK Format laueft z.B. 1 Euro und 5 Cent. Auf einem Deutschen allerdings der 1. Mai... Schreibe ich 1,05 dann hab ich natuerlich mit deutschem Format 1 Euro und 5 Cent aber auf einem britischen einen String, mit dem er nicht viel anfangen kann.
Hat irgendwer eine Idee, wie man so ein Excelfile korrekt erstellen kann, ohne dass man alles in 2 verschiedenen Formaten ausgeben muss, je nach Format, was der User auswaehlt? (bloed genug, weil man das den Usern schon wieder erklaeren muss...)
Ich kann zwar auch Code zum Formatieren in die Zellen schreiben, aber das wird ja noch schlimmer, denn ein deutsches Excel versteht unabhaengig von den Formateinstellungen des Rechners keine englischen Befehle und ein englisches keine deutschen. Ich will gar nicht erst wissen, welche Laender noch eigene Befehle haben. Wir haben so schon immer genug Spass, wenn uns ein Kollege mit deutschem Office ein Programm schickt.
An den Einstellungen der Rechner und Office kann ich natuerlich nichts aendern.
Trau Dich!