Fórum Exporta Excel #430763
10/12/2012
0
Olá Pessoal tenho o código abaixo para exportar os dados de uma tabela para excel.
try
excel := CreateOleObject('excel.application');
if not Excel.Application.Visible then
Excel.Application.Visible := true;
Excel.WorkBooks.Add;
DM_SIG.QRY_CONS_ORDEMTBL.First;
i:=0;
While not DM_SIG.QRY_CONS_ORDEMTBL.Eof do
begin
inc(i);
Excel.Cells[i, 1] := DM_SIG.QRY_CONS_ORDEMTBLSTATUS.asString;
Excel.Cells[i, 2] := DM_SIG.QRY_CONS_ORDEMTBLORDEM.AsInteger;
Excel.Cells[i, 3] := DM_SIG.QRY_CONS_ORDEMTBLCLIENTE.asString;
Excel.Cells[i, 4] := DM_SIG.QRY_CONS_ORDEMTBLVEICULO.asString;
Excel.Cells[i, 5] := DM_SIG.QRY_CONS_ORDEMTBLPLACA.asString;
Excel.Cells[i, 6] := DM_SIG.QRY_CONS_ORDEMTBLTOTAL_MATERIAL.AsCurrency;
Excel.Cells[i, 7] := DM_SIG.QRY_CONS_ORDEMTBLTOTAL_MAO_OBRA.AsCurrency;
Excel.Cells[i, 8] := DM_SIG.QRY_CONS_ORDEMTBLVALOR_TOTAL.AsCurrency;
Excel.Cells[i, 9] := DM_SIG.QRY_CONS_ORDEMTBLDATA_SOLICITACAO.AsDateTime;
Excel.Cells[i, 10] := DM_SIG.QRY_CONS_ORDEMTBLDATA_EXECUCAO.AsDateTime;
DM_SIG.QRY_CONS_ORDEMTBL.Next;
end ;
except
showmessage('Ocorreu erro ao executar a transferência')
end;
Porém não consigo fazer com que o título do campo apareça na planilha
Ex:
Exporto o campo " Excel.Cells[i, 3] := DM_SIG.QRY_CONS_ORDEMTBLCLIENTE.asString;(Refere-se a relação Clientes)"
porém queira colocar na coluna em que foi exportado a relação de clientes o título da coluna "CLIENTE".
Ficarei grato se alguém puder me ajudar
try
excel := CreateOleObject('excel.application');
if not Excel.Application.Visible then
Excel.Application.Visible := true;
Excel.WorkBooks.Add;
DM_SIG.QRY_CONS_ORDEMTBL.First;
i:=0;
While not DM_SIG.QRY_CONS_ORDEMTBL.Eof do
begin
inc(i);
Excel.Cells[i, 1] := DM_SIG.QRY_CONS_ORDEMTBLSTATUS.asString;
Excel.Cells[i, 2] := DM_SIG.QRY_CONS_ORDEMTBLORDEM.AsInteger;
Excel.Cells[i, 3] := DM_SIG.QRY_CONS_ORDEMTBLCLIENTE.asString;
Excel.Cells[i, 4] := DM_SIG.QRY_CONS_ORDEMTBLVEICULO.asString;
Excel.Cells[i, 5] := DM_SIG.QRY_CONS_ORDEMTBLPLACA.asString;
Excel.Cells[i, 6] := DM_SIG.QRY_CONS_ORDEMTBLTOTAL_MATERIAL.AsCurrency;
Excel.Cells[i, 7] := DM_SIG.QRY_CONS_ORDEMTBLTOTAL_MAO_OBRA.AsCurrency;
Excel.Cells[i, 8] := DM_SIG.QRY_CONS_ORDEMTBLVALOR_TOTAL.AsCurrency;
Excel.Cells[i, 9] := DM_SIG.QRY_CONS_ORDEMTBLDATA_SOLICITACAO.AsDateTime;
Excel.Cells[i, 10] := DM_SIG.QRY_CONS_ORDEMTBLDATA_EXECUCAO.AsDateTime;
DM_SIG.QRY_CONS_ORDEMTBL.Next;
end ;
except
showmessage('Ocorreu erro ao executar a transferência')
end;
Porém não consigo fazer com que o título do campo apareça na planilha
Ex:
Exporto o campo " Excel.Cells[i, 3] := DM_SIG.QRY_CONS_ORDEMTBLCLIENTE.asString;(Refere-se a relação Clientes)"
porém queira colocar na coluna em que foi exportado a relação de clientes o título da coluna "CLIENTE".
Ficarei grato se alguém puder me ajudar
Sidimar Cunha
Curtir tópico
+ 0
Responder
Posts
10/12/2012
Rodolpho Silva
Você não pode reservar a primeira linha do Excel para informa o nome das colunas? Se sim, a mesma forma que você preenche os detalhes da planilha seria a mesma forma de preencher os nomes das colunas.
Responder
Gostei + 0
10/12/2012
Joel Rodrigues
Antes de fazer o loop você faz o seguinte:
Isso para o campo cliente, para os demais basta seguir o mesmo raciocínio.
E o loop deve então começar na linha seguinte, ou seja, na linha i=1.
Excel.Cells[0, 3] := 'CLIENTE';
Isso para o campo cliente, para os demais basta seguir o mesmo raciocínio.
E o loop deve então começar na linha seguinte, ou seja, na linha i=1.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)