Veja este código enviado por um AMIGO DA LISTA:
unit Uextotais; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, Buttons, StdCtrls, Mask, ToolEdit, Db, IBCustomDataSet, IBQuery, Grids, DBGrids, OleServer, Excel97, RXDBCtrl; type TFRMExTotais = class(TForm) ExcelWorksheet1: TExcelWorksheet; ExcelApplication1: TExcelApplication; Panel1: TPanel; Label1: TLabel; Label2: TLabel; SpeedButton1: TSpeedButton; Label3: TLabel; Label4: TLabel; Edit1: TEdit; DateEdit1: TDateEdit; DateEdit2: TDateEdit; BTNIniciar: TBitBtn; procedure Titulos; procedure SpeedButton1Click(Sender: TObject); procedure BTNIniciarClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var FRMExTotais: TFRMExTotais; implementation uses udata, ubusfor; {$R *.DFM} procedure TFRMExTotais.Titulos; begin ExcelWorksheet1.Range['A1','A1'].Value:='Nº do Item'; ExcelWorksheet1.Range['B1','B1'].Value:='Quant. Pedida'; ExcelWorksheet1.Range['C1','C1'].Value:='Custo Total'; ExcelWorksheet1.Range['D1','D1'].Value:='Det.'; ExcelWorksheet1.Range['E1','E1'].Value:='Nº da Conta'; ExcelWorksheet1.Range['F1','F1'].Value:='Uni. Neg.'; ExcelWorksheet1.Range['G1','G1'].Value:='Cta. Obj.'; ExcelWorksheet1.Range['H1','H1'].Value:='ID Ativo'; end; procedure TFRMExTotais.SpeedButton1Click(Sender: TObject); begin Fbusfor.showmodal; Edit1.Text:=dmcf.qemp1EMPCOD.AsString; end; procedure TFRMExTotais.BTNIniciarClick(Sender: TObject); var lcid,linha:integer; WkBk:_Workbook; begin begin dmcf.IBQExTotais.Close; dmcf.IBQExTotais.SQL.Clear; dmcf.IBQExTotais.SQL.Add('select iteijd,sum(conqtd) as quantidade,sum(convlu*conqtd) as valor, veiune,itegru,veiida as ID_ATIVO from consumo,item,veiculo'); dmcf.IBQExTotais.SQL.Add('where conite=itecod and conplc=veiplc and conemp=:posto and condte>=:dtini and condte<=:dtfin'); dmcf.IBQExTotais.SQL.Add('group by conite,conplc,itegru,itecod,iteijd,veiida,veiune'); dmcf.IBQExTotais.Params[0].AsString:=Edit1.Text; dmcf.IBQExTotais.Params[1].AsDate:=DateEdit1.Date; dmcf.IBQExTotais.Params[2].AsDate:=DateEdit2.Date; dmcf.IBQExTotais.Open; if dmcf.IBQExTotais.RecordCount<>0 then begin lcid := GetUserDefaultLCID; ExcelApplication1.Visible[lcid] := true; WkBk:=ExcelApplication1.Workbooks.Add(EmptyParam, lcid); ExcelWorksheet1.ConnectTo(WkBk.Worksheets[1] as _Worksheet); ExcelWorksheet1.Activate(LCID); ExcelApplication1.ScreenUpdating[lcid]:=true; ExcelWorksheet1.Name := 'Relatórios via Excel'; Titulos; linha:=2; dmcf.IBQExTotais.First; while dmcf.IBQExTotais.Eof=false do begin ExcelWorksheet1.Range['A'+IntToStr(linha),'A'+IntToStr(linha)].Value:=dmcf.I BQExTotaisITEIJD.AsString; ExcelWorksheet1.Range['B'+IntToStr(linha),'B'+IntToStr(linha)].Value:=dmcf.I BQExTotaisQUANTIDADE.AsFloat; ExcelWorksheet1.Range['C'+IntToStr(linha),'C'+IntToStr(linha)].Value:=dmcf.I BQExTotaisVALOR.AsFloat; ExcelWorksheet1.Range['D'+IntToStr(linha),'D'+IntToStr(linha)].Value:=dmcf.I BQExTotaisID_ATIVO.AsString; ExcelWorksheet1.Range['E'+IntToStr(linha),'E'+IntToStr(linha)].Value:=dmcf.I BQExTotaisVEIUNE.AsString+'.'+dmcf.IBQExTotaisITEGRU.AsString+'.'+dmcf.IBQEx TotaisID_ATIVO.AsString; ExcelWorksheet1.Range['F'+IntToStr(linha),'F'+IntToStr(linha)].Value:=dmcf.I BQExTotaisVEIUNE.AsString; ExcelWorksheet1.Range['G'+IntToStr(linha),'G'+IntToStr(linha)].Value:=dmcf.I BQExTotaisITEGRU.AsString; ExcelWorksheet1.Range['H'+IntToStr(linha),'H'+IntToStr(linha)].Value:=dmcf.I BQExTotaisID_ATIVO.AsString; dmcf.IBQExTotais.Next; linha:=linha+1; end; Edit1.Clear; DateEdit1.Clear; DateEdit2.Clear; end else MessageDlg('Nenhum registro encontrado',mtInformation,[mbok],0); end; end; end. Boa sorte! Claudio H.Binaghi [EMAIL PROTECTED] Fone: (011) 3289.3525 / 3289.0075 ----- Original Message ----- From: "CPD Trianon" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, December 09, 2004 9:15 AM Subject: [delphi-br] Excel e Delphi > > Olá pessoal, bom dia...preciso de ajuda, algum exemplo sobre como importar > os dados de uma planilha do excel para uma tabela ou clientdataset.. > > Tenho a planilha somente com cinco colunas, mas milhares de linhas e preciso > importa para uma tabela para realizar alguns cálculos, filtros, > relatórios... > toda e qualquer ajuda será bem-vinda. > > []'s > Topolniak. > > > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > Para ver as mensagens antigas, acesse: > http://br.groups.yahoo.com/group/delphi-br/messages > > Para falar com o moderador, envie um e-mail para: > [EMAIL PROTECTED] ou [EMAIL PROTECTED] > > Links do Yahoo! Grupos > > > > > > > > > -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html