Exportação no Delphi

Delphi

15/09/2012

Boa tarde galera,

Alguém pode me ajudar como fazer uma exportação em excel.

Gustavo Fernandes

Gustavo Fernandes

Curtidas 0

Respostas

Singular Ti

Singular Ti

15/09/2012

explique melhor o que vc quer exportar para o excel?? conteudo de uma DBGrid? resultado de um select (clientdataset)??
Enfim... Explique melhor para podermos lhe ajudar...
GOSTEI 0
Gustavo Fernandes

Gustavo Fernandes

15/09/2012

Leandro,

é resultado de um select usando uma (Query).

Se puder me ajudar eu agradeceria muito!
GOSTEI 0
Alisson Santos

Alisson Santos

15/09/2012

Como quer fazer essa exportação.
O que precisa que seja exportado e de qual forma.
Poderia explicar melhor para podermos auxiliar no desenvolvimento.
GOSTEI 0
Romulo Contro

Romulo Contro

15/09/2012

faz o seguinte... cria uma variavel do tipo Variant

por exemplo:
Excel : Variant;

Excel := CreateOleObject('Excel.Application');
Excel.WorkBooks.Add;
Excel.WorkBooks[1].Sheets.Add;
Excel.Visible := true; (aqui é caso vc quiser mostrar o excel na tela)

Excel.WorkBooks[1].Sheets[1].Cells[numerolinha,numerocoluna] := o que vc quiser aqui...

Excel.WorkBooks[1].SaveAs('aqui coloca o caminho que quiser salvar');
Excel.Visible := false; (aqui se tiver com o visible true, vc pode colocar = false, que ele fica aberto mas some da tela)

//essas 3 linhas de baixo fecha o excel e tira ele da memória
Excel.WorkBooks[1].Close;
Excel.Quit;
Excel := Unassigned;

você pode implementar isso aí dentro de um for, ou de um while, controlando as linhas e colunas com variaveis integer... aí vai do seu talento organizar isso do jeito que ficar melhor.

espero que tenha entendido...
GOSTEI 0
Gustavo Fernandes

Gustavo Fernandes

15/09/2012

Romulo,

fiquei um pouco confuso com sua explicação. e não deu certo meu caro.

Eu, só quero exporta uma tabela de clientes com mais ou menos 10 campos.

e estou utilizando uma Query para filtrar os dados do campo.

GOSTEI 0
Romulo Contro

Romulo Contro

15/09/2012

ok, tenta fazer exatamente com esse codigo então:


procedure GerarExcel();
var
Excel : Variant;
i, j, l, c : integer;
begin
inherited;

c := 1;
l := 1;
Excel := CreateOleObject('Excel.Application');
Excel.WorkBooks.Add;
Excel.WorkBooks[1].Sheets.Add;

Query.Open;
Query.First;

for i := 0 to Query.FieldCount-1 do
begin
Excel.WorkBooks[1].Sheets[1].Cells[l,c] := Query.Fields[i].FieldName;
Excel.WorkBooks[1].Sheets[1].Cells[l,c].font.bold := true;
Excel.WorkBooks[1].Sheets[1].Cells[l,c].interior.color := clMoneyGreen;
inc(c);
end;

while not Query.Eof do
begin
c := 0;
inc(l);
for i := 0 to Query.FieldCount-1 do
begin
inc(c);
Excel.WorkBooks[1].Sheets[1].Cells[l,c].NumberFormat := '@';
Excel.WorkBooks[1].Sheets[1].Cells[l,c] := Query.Fields[i].Value;
end;

Query.Next;

end;
Excel.Visible := true;
end;


obs: só troca a Query pelo nome da query que vc criou
GOSTEI 0
Deivison Melo

Deivison Melo

15/09/2012

Existem componentes freewares para que possa exportar as informações carregadas no dataset diretamente...

GOSTEI 0
Alisson Santos

Alisson Santos

15/09/2012

Caro amigo, eu não sei muito bem pois nunca tive que fazer.
nesse link que estou disponibilizando pode sanar sua duvida http://catrinck.wordpress.com/2008/03/10/exportar-os-dados-contidos-na-tela-para-excel-em-delphi/
GOSTEI 0
Claudia Nogueira

Claudia Nogueira

15/09/2012

Fiz um exemplo de como uso no meu sistema quando preciso exportar alguma informação para o excel.
-->[url]www.cdnweb.com.br/TesteExcel.rar[/url]

Qualquer dúvida, estou a disposição.
GOSTEI 0
Gustavo Fernandes

Gustavo Fernandes

15/09/2012

Obrigado pessoal,

com ajuda de vocês não sou ninguém. As dicas foram certeiras.

GOSTEI 0
POSTAR