Einzelnen Beitrag anzeigen

Bengalo

Registriert seit: 29. Sep 2007
5 Beiträge
 
#1

Stringgrid als Excel speichern

  Alt 17. Okt 2008, 21:17
So , hab ein weiteres Problem und zwar:
Ich versuche ein Stringgrid auszulesen und es dann in eine Excel Tabelle zu speichern. Wenn ich es auf einen Button lege , mit einem festen Pfad und einem festen Namen funktioniert es einwandfrei , jedoch wenn ich es mit opendialog machen will , damit ich flexibler bin , bekomme ich immer Probleme bei der Zeile:

Excel.ActiveWorkbook.SaveAs(ExtractFilePath(Application.ExeName)+'/'+Speichername); Die Prozedur sieht folgendermaßen aus:

Delphi-Quellcode:
procedure TForm1.Speichernunter1Click(Sender: TObject);
var excel:Variant;
    i,j:integer;
    Speichername:string;
begin
  if SaveDialog1.Execute then begin
    try
      excel := CreateOleObject('Excel.Application');
      excel.visible := False;
    except
      ShowMessage('Excel konnte nicht gestartet werden !');
    end;

    Excel.Workbooks.Add;
    for j:=1 to 5
      do begin
        for i:=1 to Notentabelle.RowCount
        do Excel.Cells[i, j].Value:=Notentabelle.Cells[j,i];
      end;
    Speichername:=SaveDialog1.FileName;
    Excel.ActiveWorkbook.SaveAs(ExtractFilePath(Application.ExeName)+'/'+Speichername);
    Excel.Quit;
    Excel := Unassigned;
    end;
end;
Hat einer von euch ne Ahnung woran es liegt? Warum nimmt er den Speichernamen nicht an? Und wie kann ich ihm sagen welchen Ordner ich ausgewählt habe , anstelle des ExtractfilePath?
Vielen Danke im Vorraus
  Mit Zitat antworten Zitat