Problem mit Excel
spacer
Autor Nachricht
juelin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 32

Win XP, Linux
D7 K3
BeitragVerfasst: So 27.11.11 13:05 
Hallo,
ich benutze Delphi 7.
Ich möchte ein Excelfile erstellen und habe folgenden Code:
ausblenden volle Höhe Delphi-Quelltext markieren
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
  var Excel: Variant;
var exfile: String; // Inhalt 'c:\abc.xls'
var exsheet: String; // Inhalt 'abc'
var tof: File;
var exzeile: integer;
var exspalte: integer;
var a: integer;
a:=0;
AssignFile(tof, exfile);
{$i-}
Rewrite(tof, 1);
{$I+}
if (IOResult = 0) then
begin
CloseFile(tof);
try
Excel:=CreateOleObject('Excel.Application');
a:=1;
except
ShowMessage('Excel konnte nicht gestartet werden');
end;
if a = 1 then
begin
Excel.Visible:=True;
Excel.WorkBooks.Open(exfile);
Excel.Sheets[exsheet].Activate;
exzeile:=1;
exspalte:=1;
Excel.Cells[exzeile, exspalte].NumberFormat:='@';
Excel.Cells[exzeile, exspalte].HorizontalAlignment:=xlHAlignLeft;
Excel.Cells[exzeile, exspalte].Interior.Color:=clBlue;
Excel.Cells[exzeile, exspalte].Font.Size:=10;
Excel.Cells[exzeile, exspalte].Font.FontStyle:='Bold';
Excel.Cells[exzeile, exspalte].Font.Color:=clYellow;
Excel.Cells[exzeile, exspalte].Font.Name:='Courier New';
Excel.Cells[exzeile, exspalte].Value:='Anrede'+Chr(10)+Chr(13)+'Titel';
Excel.Workbooks.Close;
Excel.Quit;
Excel:= Unassigned;
end;
end;

Auf dem Bildschirm sieht das Excelfile gut aus (Feld Blau Schrift Gelb).
Wenn ich das Excelfile mit dem Windows-Explorer aufrufe ist aber das Feld Weiß und die Schrift Schwarz.

Was mache ich falsch?

NEU NEU NEU !!!!!!!
Jetzt habe ich herausgefunden: Beim Befehl Excel.Workbooks.Close kommen Meldungsboxen hoch.
1. Meldungsbox Microsoft Excel "Sollen Ihre Änderungen in abc.xls gespeichert werden?" Ja, Nein, Abbrechen Ich drücke Ja
2. Speichern unter Box. Der Filename steht drin. Aber unter Filetype steht "Text (Tabstopp-getrennt (*.txt)" Sollte aber Excel-Arbeirsmappe sein. Ich drücke speichern.
3. Meldungsbox "Die Datei abc.xls besteht bereits. Möchten Sie die bestehende Datei ersetzen?" Ja, Nein Ich drücje Ja.

Wie kann man diese Medungsboxen unterdrücken (automatisch abarbeiten. Und wie kann der richtige Filetype eingestellt werden. ????

Gruss
Jürgen

Moderiert von user profile iconTh69: Delphi-Tags hinzugefügt
Moderiert von user profile iconNarses: Topic aus Programmierwerkzeuge verschoben am Mo 28.11.2011 um 05:37
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.


Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.
Chatfix
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1571
Erhaltene Danke: 5

Win 7, Win Vista, Win XP, Win 98
TP7, D7, VS 2010 (VB.net), MsSQL (T-SQL), Edit+ (HTML, CSS, PHP, MySQL)
BeitragVerfasst: Mi 07.12.11 07:57 
Versuchsmal mit Excel.Workbook.SaveAs

Siehe auch: msdn.microsoft.com/d...saveas(v=vs.80).aspx
Ich weiß dort ist nicht Delphi, sollte aber durch die API der gleiche Aufruf sein.

Das das ganze vor dem Close kommen muss versteht sich ja sicher von selbst.

_________________
Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
home home