Bir delphi kullanıcısının yapmış olduğu EXCEL_TABLE adlı componenti kullanıyorum. Bu component te (EXCEL_TABLE) aktaracağınız table ı işaretliyorsunuz ve status u TRUE yaptığınızda EXCEL aplikasyonunu çalıştırıp table i EXCEL formu olarak açıyor. Çok kolay ve kullanışlı bir component.....
Fakat ..... createoleobject('EXCEL.APPLICATION') satırında aşağıdaki mesajı alıyorum....
COINITIALIZE HAS NOT BEEN CALLED
Bu konuda fikir sahibi olan arkadaşlara teşekkürlerimi bildiririm ..
BİR TABLE daki bilgileri EXCEL a aktarma....
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Merhaba,
1. uses kısmındaki unitlere bir bak. Muhtemelen bazılarını yazmamışsındır, ondan olabilir.
2. viewtopic.php?t=54&highlight=coinitialize
bu mesajdaki çözüm işe yarayabilir.
Kolay gelsin.
1. uses kısmındaki unitlere bir bak. Muhtemelen bazılarını yazmamışsındır, ondan olabilir.
2. viewtopic.php?t=54&highlight=coinitialize
bu mesajdaki çözüm işe yarayabilir.
Kolay gelsin.
Aşağıdaki kodu tablona uyarlarsan sanırım sorunu çözersin.
Kolaygelsin
uses ComObj ....
procedure TForm1.Button1Click(Sender: TObject);
var
excel, sayfa: Variant ;
d:integer;
r:variant;
begin
Screen.Cursor := crHourGlass;
excel:=createoleobject('excel.application');
excel.workbooks.add;
sayfa:=excel.workbooks[1].worksheets[1];
r:=excel.activeworkbook.worksheets[1].cells[1];
d:=0;
r.cells[1,1]:='Cust No';
r.cells[1,2]:='Company';
r.cells[1,3]:='City';
table1.Open;
table1.First;
while Not Table1.eof Do
begin
d:=d+1;
r.cells[1+d,1]:=Table1.FieldByName('CustNo').AsString;
r.cells[1+d,2]:=Table1.FieldByName('Company').AsString;
r.cells[1+d,3]:=Table1.FieldByName('City').AsString;
Table1.Next;
end;
table1.Close;
Screen.Cursor := crDefault;
excel.visible:=true;
excel:=unassigned;
end;
Table1.Next;
end;
table1.Close;
excel.Columns.AutoFit; // burası colonlari ayarlar
Screen.Cursor := crDefault;
Kolaygelsin
uses ComObj ....
procedure TForm1.Button1Click(Sender: TObject);
var
excel, sayfa: Variant ;
d:integer;
r:variant;
begin
Screen.Cursor := crHourGlass;
excel:=createoleobject('excel.application');
excel.workbooks.add;
sayfa:=excel.workbooks[1].worksheets[1];
r:=excel.activeworkbook.worksheets[1].cells[1];
d:=0;
r.cells[1,1]:='Cust No';
r.cells[1,2]:='Company';
r.cells[1,3]:='City';
table1.Open;
table1.First;
while Not Table1.eof Do
begin
d:=d+1;
r.cells[1+d,1]:=Table1.FieldByName('CustNo').AsString;
r.cells[1+d,2]:=Table1.FieldByName('Company').AsString;
r.cells[1+d,3]:=Table1.FieldByName('City').AsString;
Table1.Next;
end;
table1.Close;
Screen.Cursor := crDefault;
excel.visible:=true;
excel:=unassigned;
end;
Table1.Next;
end;
table1.Close;
excel.Columns.AutoFit; // burası colonlari ayarlar
Screen.Cursor := crDefault;
Teşekkür ediyorum...
Initialize ile ilgili satırları koydum.
Kullandığım bu componenti ortak bir yere gönderebilirim. Aslında yapabilecek olan; bu componenti QUERY için geliştirse çok daha da güzel olur. Bu componenti yapan arkadaşın paylaşma ve geliştirme ile ilgili herhangi bir yaptırımı yok.
Celalatak rumuzlu arkadaş a da teşekkür ediyorum.
Herkese kolay gelsin..
Initialize ile ilgili satırları koydum.
Kullandığım bu componenti ortak bir yere gönderebilirim. Aslında yapabilecek olan; bu componenti QUERY için geliştirse çok daha da güzel olur. Bu componenti yapan arkadaşın paylaşma ve geliştirme ile ilgili herhangi bir yaptırımı yok.
Celalatak rumuzlu arkadaş a da teşekkür ediyorum.
Herkese kolay gelsin..