[ popmilan76 @ 10.09.2012. 18:04 ] @
Kako da prebacim sadrzaj dbgrida u Excel tabelu pomocu koda,koristim paradox tabelu i d3...Unapred hvala
[ medixsa @ 10.09.2012. 21:16 ] @
Koristi commponent the ExcelApplication1 i deklarisi var (var
OleApplication,OleWorkBook : Variant;) i dodaj u Unit Users = ComObj




evo ti dio koda koje sam uradi, samo simple:

OleWorkBook := OleApplication.Workbooks.open(ExtractFilePath(Application.ExeName)+'izvjestaj.xls');
OleApplication.Worksheets.Application.Cells.Item[3,2] := dug;
OleApplication.Worksheets.Application.Cells.Item[3,3] := ipopis;


[ popmilan76 @ 10.09.2012. 22:36 ] @
Rekoh radim u Delphiju 3,i tu nemam tu komponentu....bar ne znam da postoji
[ medixsa @ 10.09.2012. 23:00 ] @
Imas a netu commponent Export to excel for Delphi pa skini,moras se malo potruditi
[ savkic @ 10.09.2012. 23:55 ] @
Slični problemi su ranije obrađivanji, potraži starije poruke na tu temu (Excel, OLE, ADO). Evo par linkova.

http://www.elitesecurity.org/t217226-0#1289255
http://www.elitesecurity.org/t340935-0#2084542
http://www.elitesecurity.org/t366656-0#2303198
[ popmilan76 @ 11.09.2012. 09:23 ] @
Sve je to u novijim Delphijima,nema niosta za starije varijante...
[ reiser @ 11.09.2012. 09:46 ] @
Ne razumem sto koristis Delphi 3? Predji barem na sedmicu, ako ne mozes na XE/XE2
[ popmilan76 @ 11.09.2012. 09:50 ] @
Ne mogu,jer mi na poslu imaju D3,ako predjem i na 6,nece mi raditi tamo...znam da je bez veze ali sta je tu je....
[ popmilan76 @ 11.09.2012. 10:04 ] @
A to sa excel-om mi je potrebno zbog stampe,jer nece da mi radi qreport u delphi 3,sve sam pokusao ali ne ide...
[ popmilan76 @ 11.09.2012. 10:40 ] @
Imam kod za prebacivanje iz stringgrida u excel,ali kad zamenim stringgrid u dbgrid,nece,jer dbgrid nema property cells...

procedure TForm1.Button1Click(Sender: TObject);

Var XLApp: OLEVariant;
x,y: byte;
path: variant;

begin
XLApp := CreateOleObject('Excel.Application'); // requires comobj in uses
try
XLApp.Visible := False; // Hide Excel
XLApp.DisplayAlerts := False;
path := 'C:\Documents and Settings\milan.PTT-0847394BE93\Desktop\New Folder\test.xls';
XLApp.Workbooks.Open(Path); // Open the Workbook
for x := 1 to 4 do
begin
for y := 1 to 6 do
begin
XLApp.Cells[x,y].Value := stringgrid1.Cells (y,x); // fill stringgrid with values
end;
end;
finally
XLApp.ActiveWorkBook.Save;
XLApp.Quit;
XLAPP := Unassigned;

end;
end;
end.


ono sto bih mogao jeste da vezem dbgrid sa stringridom,pa onda u excel ali je dupli posao.....mora da postoji moigucnost direktno

[Ovu poruku je menjao popmilan76 dana 11.09.2012. u 12:13 GMT+1]

[Ovu poruku je menjao popmilan76 dana 11.09.2012. u 12:13 GMT+1]
[ radicr @ 11.09.2012. 11:34 ] @
Trebalo bi da to sto radis sa TStringGrid mozes uraditi sa TDataSet. TDBGrid bi trebao da ima DataSource.DataSet pa mozes kroz to da iteriras i radis slicno kao sto radis sa TStringGrid.
Mozda ovaj link moze da pomogne:

http://lists.elists.org/piperm...talk/2005-February/020131.html
[ popmilan76 @ 11.09.2012. 12:31 ] @
Mislis dbgrid1.datasource.dataset;..probao i to nece....
[ savkic @ 11.09.2012. 15:33 ] @

> Sve je to u novijim Delphijima,nema niosta za starije varijante..

Ako ne možeš ADO koristiti onda sigurno možeš ručno kreiranje OLE objekta, vidim da si i slao jedan takav primer.

> Mislis dbgrid1.datasource.dataset;..probao i to nece...

Nešto ti ne radiš dobro, pre svega tebi se podaci nalaze u nekom TDatasetu (TTable, TQuery itd.), DBGrid samo prikazuje podatke iz dataseta. Nema ni jednog razloga da export u Excel radiš iz DBGrida a ne iz Dataseta. Otprilike ovako:

Code:

var
  E: OLEVariant;
  i: Integer;
begin
  E := CreateOleObject('Excel.Application');

  try
    E.Visible := True;
    E.WorkBooks.Add;

    Table1.First;
    while not Table1.Eof do
    begin
      for i := 0 to Table1.FieldCount - 1 do
        E.ActiveCell.Item[Table1.RecNo, i + 1].Value := Table1.Fields[i].AsString;

      Table1.Next;
    end;
  finally
    E.Quit;
  end;

[ popmilan76 @ 11.09.2012. 19:42 ] @
Da,to je taj kod...Hvala....
[ popmilan76 @ 17.09.2012. 17:02 ] @
I JOSi jos nesto,kako da prilikom prebacivanja prebacim i nazi kolona iz dbgrida ili tabele....da bude na vrhu kolone u excelu....Hvala