Fórum Salvar tabela do exel em delphi no pc #594550

30/05/2018

0

tenho essa função de gerar um um arquivo exel de um grid, gostaria de saber como que eu faço para salvar esse arquivo no meu pc.

procedure GerarExcelCDSESalvar(Consulta: TClientDataSet);

var
coluna, linha: Integer;
excel: variant;
Valor: string;
begin
try
excel := CreateOleObject('Excel.Application');
excel.Workbooks.add(1);
except
Application.MessageBox('Versão do Ms-Excel' + 'Incompatível', 'Erro',
MB_OK + MB_ICONEXCLAMATION);
end;
Consulta.first;
try
for linha := 0 to Consulta.RecordCount - 1 do
begin
for coluna := 1 to Consulta.FieldCount do
begin
if Consulta.Fields[coluna - 1] is TFloatField then
begin
Valor := FormatFloat(FormatoValor,
Consulta.Fields[coluna - 1].AsFloat);
excel.cells[linha + 2, coluna].NumberFormat :=
'R$ #.##0,00_);(R$ #.##0,00)';
excel.cells[linha + 2, coluna] := Valor;
end
else
begin
Valor := Consulta.Fields[coluna - 1].AsString;
excel.cells[linha + 2, coluna] := Valor;
end;
end;
Consulta.next;
end;

for coluna := 1 to Consulta.FieldCount do
begin
Valor := Consulta.Fields[coluna - 1].DisplayLabel;
excel.cells[1, coluna] := Valor;
end;
excel.Columns.AutoFit; // ajusta as colunas
excel.Workbooks.saveas('reajuste.xls');

// excel.Visible := True; essa opçao faz a tabela abrir depois de gerada
except
Application.MessageBox('Aconteceu um erro desconhecido durante a conversão'
+ 'da tabela para o Ms-Excel', 'Erro', MB_OK + MB_ICONEXCLAMATION);
end;
Abner Carvalho

Abner Carvalho

Responder

Posts

30/05/2018

Raimundo Pereira

Boa tarde.
Seguir este exemplo e não tive dificuldade.

Procedure X;
var excel :variant;
begin
try
excel := CreateOleObject('excel.application');
if not Excel.Application.Visible then
begin
Excel.Application.Visible := true;
Excel.WorkBooks.Add;
Excel.Cells[1,1] := 'cel 1,1';
Excel.Cells[1,2] := 'cel 1,2';
Excel.Cells[1,3] := 'cel 1,3';
//Aqui eu escolhi onde gostaria de salvar
Excel.ActiveWorkBook.SaveAs('c:\\aplic\\MyOutput2');
Excel.visible:=False;
Excel.quit;
Excel:=unassigned;
end;

except
showmessage('Ocorreu erro ao executar a transferência');
Excel.WorkBooks.Disconnect; //desconecta sua aplicação do documento aberto no excel.
Excel.Application.Disconnect; //desconecta sua aplicação do Excel

end;

end;
Responder

Gostei + 0

05/06/2018

Abner Carvalho

ok muito obrigado aki deu certo
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar