Seite 1 von 1

.CSV mit Comate ?

Verfasst: 08.03.2011 10:25
von Skiller
Hallo Freunde,

Ich wollte eine .xls intern in eine .csv uwandeln. Ist das mit Comate möglich?
Ich kann momentan nicht tief in Comate einsteigen, aber vielleicht ist das ja auch gar nicht nötig, da es vielleicht nur eine ganz einfache Routine ist. Hattet/ habt Ihr da vielleicht was in der Mache? :D

Gruß Skiller

Re: .CSV mit Comate ?

Verfasst: 12.03.2011 22:30
von Blackskyliner
Und "einfach" das Format selber lesen und umschreiben wäre wahrscheinlich der Overkill...
Nichts desto trotz hier mal die Doku zum Fileformat bis Office 2003 http://sc.openoffice.org/excelfileformat.pdf

Nach schnellem Googlen hab ich das hier gefunden:
http://www.ms-office-forum.net/forum/ar ... 39934.html

Daraus sollte man Theoretisch die ähnlich äquivalenten COM Befehle rausfiltern können. Vorher noch das eine oder andere Beispiel mit Comate in Action und vielleicht ist es dann möglich, ich selber kenne mich damit gar nicht aus, aber besser man hat schon mal 1-2 Ansätze als gar keine Antwort :)

Noch ein bisschen paar gesuchte Threads:
http://www.purebasic.fr/german/viewtopi ... 3&start=10
http://www.purebasic.fr/german/viewtopi ... 16&t=17446
Weitere Links zum Thema

Daraus folgt dass ODBC auch eine Variante ist um auf die xls zuzugreifen und dann händisch ins CSV Format umzuwandeln.

EDIT:
http://www.purebasic.fr/german/viewtopi ... =8&t=23254
Man sollte auch mal ab und zu in den Tipps und Tricks vorbei schauen :) Da sieht man zumindest wie man in etwa mit Excel Dateien und Comate arbeiten kann.

Grüße,
Blackskyliner

Re: .CSV mit Comate ?

Verfasst: 13.03.2011 00:39
von Falko
Sorry, das es jetzt etwas spät kommt. Aber ich musste noch einiges zu CVS ausprobieren :wink:

Die Procedure XLSFunc_SaveWorkbookAs() bitte so abändern wie in folgenden Beispiel.

Code: Alles auswählen

Procedure XLSFunc_SaveWorkbookAs(ExcelObject.COMateObject, FileName.s,FFormat=#xlNormal); Save WorkSheet as FileFormat
  Protected Workbook.COMateObject, Worksheet.COMateObject
  Workbook=ExcelObject\GetObjectProperty("ActiveWorkbook")
  If FileName <> ""
      If Workbook
         Workbook\Invoke("SaveAs('"+FileName+"', " + Str(FFormat) + ")") ;Save As #xlNormal or #xlCSV or another CSV (MSDOS or Windows)
         Workbook\Release();WorkBook freigeben
      EndIf
    EndIf
EndProcedure
Ich füge diese gleich in Tips und Tricks zu Excel versus COMatePlus mit Beispiel ein :wink:

Gruß Falko

Re: .CSV mit Comate ?

Verfasst: 14.03.2011 21:52
von Skiller
Danke!!!! Jungs, :D

da mach ich mich sofort wieder ran. Hab´ gar nicht mehr mit Antworten gerechnet

Gruß Skiller

Re: .CSV mit Comate ?

Verfasst: 21.03.2011 23:30
von Falko
Wie siehts aus?
konntest du mit der CSV-Funktion was anfangen?

Gruß Falko

Re: .CSV mit Comate ?

Verfasst: 22.03.2011 10:49
von Skiller
Entschuldige Falco,

klar hab ich´s ausprobiert. Und find´s Klasse. Ich weiss aber nicht, in wie weit Du /man noch Formatierungen einbauen kann. Wäre schön Num-Werte rechtsbündig zu halten. Kann aber auch meine Schuld sein, da ich mich mit Grids und die .CSV erst nächsten Monat beschäftigen werde. Ich halte Dich auf dem Laufenden. Danke nochmal!!! :D

Gruß Skiller

Re: .CSV mit Comate ?

Verfasst: 22.03.2011 10:58
von Kiffi
Skiller hat geschrieben:Ich weiss aber nicht, in wie weit Du /man noch Formatierungen einbauen kann. Wäre schön Num-Werte rechtsbündig zu halten.
in CSV sollte es i.A. keine Formatierung geben. Das sollte dann
in der Applikation geschehen, die die Daten anzeigt.

Grüße ... Kiffi

Re: .CSV mit Comate ?

Verfasst: 30.03.2011 12:47
von Blackskyliner
Richtig, denn sonst hat man denn den Zonk, wenn man so eine formatierte .CSV datei wieder einlesen wällte...
Kenne da so das eine oder andere Programm, dessen Ausgabe ich per Hand erstmal umparsen musste um sie dann weiter zu verwenden zu können...

Immer dann die Formatspezifikation halten ;)