Einzelnen Beitrag anzeigen

crocodilechris

Registriert seit: 20. Sep 2006
Ort: Berlin
9 Beiträge
 
Delphi 2005 Personal
 
#1

Fehler beim Excel-Datei via SaveAs in CSV speichern

  Alt 26. Sep 2006, 23:29
Gute Nacht / Guten Tag,

ich hab das Problem, dass ich eine Excel-Datei habe, welche ich via Delphi öffnen und als CSV-Datei speichern will, um diese dann zu parsen. Ich bekomme die Datei aber nicht in ein anderes format gespeichert.

//->Edit
Achja: Ich benutze Delphi 2005PE
//<-Ende:Edit

Ich bringe mir grad via #delphi.de @ Quakenet, Tutorials, InternetMaterial und der Hilfe den Umgang damit bei, jedenfalls versuche ich das und bin also noch nicht so bewandert im Umgang mit der OLE-Verwendung.

Mein Makro sieht wie folgt aus:
Code:
Sub Makro1()
'
' Makro1 Makro
'
    ChDir "E:\Projekte\abi schule"
    Workbooks.Open Filename:="E:\Projekte\abi schule\ProbedatenAbitur.xls"
    ActiveWorkbook.SaveAs Filename:="E:\Projekte\abi schule\ProbedatenAbitur.csv", FileFormat:=xlCSV, CreateBackup:=False
    ActiveWorkbook.Close
End Sub
mein Delphi Code seiht dann wie folgt aus:
Delphi-Quellcode:
var
Excel: Variant

procedure TForm1.Button2Click(Sender: TObject);
begin
Excel := CreateOleObject('Excel.Application');

Excel.Workbooks.Open('E:\Projekte\abi schule\ProbedatenAbitur.xls');

Excel.SaveAs (FileFormat:='xlCSV', Filename:='E:\Projekte\abi schule\ProbedatenAbitur.csv');

Excel.Visible := true;
Excel := unassigned;
end;
Die Exception (wärend der Laufzeit):
Debugger-Error:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt Project1.exe ist eine Exception der Klasse EOleError mit der Meldung 'Die Methode 'SaveAs' wird vom Automatisierungsobjekt nicht unterstützt' aufgetreten.
---------------------------

Programm-Error:
---------------------------
Project1
---------------------------
Die Methode 'SaveAs' wird vom Automatisierungsobjekt nicht unterstützt.
---------------------------


Was mach ich falsch? Zu wenig parameter angegeben, oder falsche Reihenfolge?

Vielen Dank für eure kommende Hilfe.

crocodilechris
  Mit Zitat antworten Zitat