Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   problemilla con la exportación a excel (https://www.clubdelphi.com/foros/showthread.php?t=41120)

Apetelinau 07-03-2007 21:56:30

problemilla con la exportación a excel
 
Hola. ;)
Tengo que crear una tabla de datos con los resultados de una fft y me gustaria exportarla a excel para que el usuario haga lo que le dá la gana.

He estado navegando por los otros hilos y he visto multitud de opciones, pero siempre que creo un fichero con CreateOLEObject me sale "transparente", es decir, cuando intento abrirlo con el excel me sale solo el menu y las barras de herramientas, pero ninguna hoja.
He ido simplificando cada vez más el código, pero incluso con esto no veo nada
Código Delphi [-]
var
  Excel: OleVariant;
  Libro: OleVariant;
  Hoja: OleVariant;

begin
  Excel := ComObj.CreateOleObject('Excel.Application');
  Libro := Excel.WorkBooks.Add;
  Hoja := Libro.ActiveSheet;
  Hoja.Cells[1, 1] := 'Hola mundo';

  Libro.SaveAs('ejemplo.xls');
  Excel.Quit;
end;

¿Alguien sabe que puede estar pasando?
Gracias.;)

marcoszorrilla 07-03-2007 22:10:02

Comprobado que este código que te adjunto funciona:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,ComObj,
  StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
  excel:Variant;
  hoja:OleVariant;
  libro:OleVariant;

begin
  try
    excel:=CreateOleObject('Excel.Application');
  except
    ShowMessage('Excel no se pudo iniciar.');
    exit;
  end;
  excel.Visible:=true;
  excel.Workbooks.Add;

  Libro := Excel.WorkBooks.Add;
  Hoja := Libro.ActiveSheet;
  Hoja.Cells[1, 1] := 'Hola mundo';

  Libro.SaveAs('ejemplo.xls');
  Excel.Quit;

end;

end.

Un Saludo.

Apetelinau 07-03-2007 22:59:48

Gracias... :D

Confirmado, he probado el fichero ejemplo en el portatil y resulta que es culpa de mi office...:confused:

Hubiera podido morirme si no se me ocurre comprobarlo.
Salu2.


La franja horaria es GMT +2. Ahora son las 06:32:01.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi