Delphi: Exportar ClientDataSet para Excel com OLE

0

Posted on : 03-09-2012 | By : Paulo H Oliveira | In : Delphi

Segue abaixo um exemplo para exportar um ClientDataSet para excel usando OLE:

var
  pasta : Variant;
  Linha : Integer;
begin
  dm.ibclientes.Filtered := False;
  Linha :=2;
  Pasta := CreateOleObject('Excel.Application');
  Pasta.WorkBooks.add(1);
  Pasta.Caption := 'Cadastro de Clientes';
  Pasta.Visible := False;
  Pasta.Cells[1,1] := 'Cliente';
  Pasta.Cells[1,2] := 'Endereço';
  Pasta.Cells[1,3] := 'Fone';
  dm.ibclientes.DisableControls;
try
While not dm.ibclientes.Eof do
    begin
      Pasta.Cells[Linha,1]:= dm.IbClientesCLI_NOME.Value;
      Pasta.Cells[linha,2] := dm.IbClientesCLI_ENDERECO.Value;
      Pasta.Cells[Linha,3] := dm.IbClientesCLI_TELEFONE.Value;
      Linha := Linha + 1;
      dm.ibclientes.Next;
    end;
      Pasta.Columns.AutoFit;
      Pasta.WorkBooks[1].Sheets[1].Protect(DrawingObjects := True, Contents:=true,
      Scenarios := true, Password := '1234');
    if SaveDialog1.Execute then
       Pasta.WorkBooks[1].SaveAs(SaveDialog1.FileName);
       Pasta.Visible := True;
    Finally
        dm.ibclientes.EnableControls;
        Pasta := Unassigned;
    end;
end;

Compartilhe :

  • Stumble upon
  • twitter

Escreva um comentário

Security Code: