Relatório em formato XLS

Delphi

08/05/2003

Olá amigos,

Preciso direcionar um relatório para o exel, ou seja, preciso que o relatório seja em formato excel. Aguém poderia me ajudar (a bem da verdade ensinar, pois não faço a menor idéia de como fazer isso).

Obrigada pelo suporte,
[img]http//www.ona.hpg.com.br/ona/IsadoraOzeiaOna_4.jpg[/img]
Isadora.


Isadora

Isadora

Curtidas 0

Respostas

Skaarj

Skaarj

08/05/2003

Okay, vamos lá:

Primeiro adicione em USES [b:6f5e27bb7c]ComObj[/b:6f5e27bb7c]
Em um botão, remova o BEGIN e coloque:

var
Excel : Variant;
{variavel para conexão do OLE}
Linha:Integer;
{linha do arquivo do Excel}
begin
{Olha o begin d volta!! d:-)}
Excel := CreateOleObject(´Excel.Application´);
{Cria a conexão com o Excel}
Excel.Visible :=True;
{Abre a conexão com o Excel}
Excel.WorkBooks.Open(´c:\controle\Excel\clientes.xls´);
{Aqui você define o arquivo que deve ser gerado. Na verdade, esse arquivo já deve existir, mesmo que esteja vazio}
Excel.WorkBooks[1].Sheets[1].Cells[1,1].Font.Name:=´Arial Black´;
{Coloca na linha 1 coluna1 [nessa ordem] o tipo de fonte ARIAL BLACK}
Excel.WorkBooks[1].Sheets[1].Cells[1,1].Font.Color:=clNavy;
{Coloca na linha 1 coluna1 [nessa ordem] a cor de fonte AZUL MARINHO}
Excel.WorkBooks[1].Sheets[1].Cells[1,1]:=´Código´;
{coloca na linha 1 coluna 1 o texto ´CODIGO´}
Excel.WorkBooks[1].Sheets[1].Cells[1,2]:=´Representante´;
{coloca na linha 1 coluna 2 o texto ´REPRESENTANTE´}
{Agora inicia a parte boa!!}
Linha:=3;
{dirige o foco para a linha 3}
While not DtmPlugin_Controle.Cliente.Eof do
Begin
{enquanto a tabela não chegar ao fim...}
Excel.WorkBooks[1].Sheets[1].Cells[Linha,1]:=DtmPlugin_Controle.ClienteCODIGO.Value;
{coloca o valor que estiver no campo codigo da tabela na linha e coluna definida entre colchetes}
Excel.WorkBooks[1].Sheets[1].Cells[Linha,2]:=DtmPlugin_Controle.ClienteREPRESENTANTE.Value;
{coloca o valor que estiver no campo representante da tabela na linha e coluna definida entre colchetes}
DtmPlugin_Controle.Cliente.Next;
{avança a tabela}
Linha:=Linha+1;
{manda o cursor para a aproxima linha do arquivo XLS}
end;
{fecha o while}
Excel.WorkBooks[1].SaveAs(´c:\controle\Excel\clientes.xls´);
{salva o arquivo do EXCEL}
dtmplugin_controle.Cliente.Refresh;
{atualiza a tabela}

Blz? Qualquer dificuldade entre em contato em meu mail..


GOSTEI 0
POSTAR