Autor Beitrag
kinghavi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: Sa 19.08.06 14:03 
und noch ne Frage, im meinem Programm kommt ein Stringgrid vor, ich hab im i net ne procedure gefunden zum speichern davon. jetzt kann man das zwar auch mit exel öffnen, hat aber leider nciht mehr das aussehen es Stringgrid, warum??

danke schön Speichrprocedure:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure GridSpeichern(grd:TStringGrid;Datei:string);
var sl:TStringlist;
x,y:integer;
begin
sl:=TStringlist.create;
sl.add(inttostr(grd.colcount));
sl.add(inttostr(grd.rowcount));
for x:=0 to grd.ColCount-1 do
for y:=0 to grd.RowCount-1 do
sl.add(grd.cells[x,y]);
for x:=0 to grd.ColCount-1 do
sl.add(inttostr(grd.ColWidths[x]));
for x:=0 to grd.RowCount-1 do
sl.add(inttostr(grd.RowHeights[x]));
sl.add(inttostr(grd.clientwidth));
sl.add(inttostr(grd.clientheight));
sl.add(inttostr(ord(grd.ScrollBars)));
sl.savetofile(datei);
sl.free;
end;


Moderiert von user profile iconraziel: Delphi-Tags hinzugefügt
kinghavi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: So 20.08.06 09:07 
kann mir keiner helfen????
Jakob Schöttl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: So 20.08.06 10:00 
naja, Excel hat eben ein anderes Format, als das gespeicherte StringGrid. Excel erwartet bei jeder Zelle z. B. Formatierungsinformationen, oder so was ähnliches. In deiner Procedure werden die aber nicht gesetzt, deswegen weiß excel nicht, wie es die datei darstellen muss.

ich weiß aber, wie du es als txt speichern kannst, und dann nach excel importieren. da musst du zwischen jeder Zelle in der gleichen Zeile in Tabzeichen machen, und am ende der zeile ein Enterzeichen und dann die nächste zeile. also so:
ausblenden Delphi-Quelltext
1:
2:
zelleA1  ZelleB2  ZelleC3
ZelleA2  ZelleB2  ZelleC3

da kommt dann bei excel, wenn du das öffnest ein import-Assistent, da musst du einfach immer auf weiter drücken und schließlich auf Fertigstellen.
Jakob Schöttl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Mo 21.08.06 09:43 
Hab grad ausprobiert: Du kannst auch die Oben beschriebene Textdatei genau mit dem gleichen Inhalt als .xls speichern. Dann kann Excel sie ohne Probleme richtig öffnen!
hermannhass
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 25

win2000

BeitragVerfasst: So 27.08.06 12:30 
Titel: Sheet-Name. möglichst ohne OLE
hallo
ich muss auch nur strings schreiben, sodass mir die einfache (quasi CVS) Methode reicht. Wünschenswert wäre die Angabe des Sheet-Namens. Ist ein Export auch so einfach möglich, ohne gleich auf eine langsame OLE-Anbindung zurückgreifen zu müssen?