Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Exportar a excel con mas de 1 hoja (https://www.clubdelphi.com/foros/showthread.php?t=29492)

Perio 24-01-2006 00:19:46

Exportar a excel con mas de 1 hoja
 
Hola.

Ya el titulo lo dice todo, no puedo lograr exportar documentos excel con mas de una hoja, estube buscando en el foro y ya alguien pregunto por este tema pero en el 2003, tal vez ajguien pueda contestar ahora...

Probe tambien mirando el codigo de una macro autogenerada pero no me funciono.

Un saludo.
Perio

Fernando 24-01-2006 05:55:54

Hola Foromaniaco:

Visita la página www.delphi.com.ar de nuestro compañero idem.

Saludos.

Perio 24-01-2006 13:04:55

Hola fernado:

Te agradesco mucho la respuesta, pero no encontre nada de exportaciones excel en www.delphi.com.ar, recirri un poco los ejemplos pero no encontre nada...

Saludos
Perio

Perio 24-01-2006 16:34:03

Hola.

Ya lo pude resolver, (paresco un lunático, hago preguntas y me las contesto).
Lo resolvi de la sig manera, lo pongo para que si alguien lo necesite ya quede en el foro, o para ese que pregunto lo mismo en mayo del 2003, si todavia no lo pudo hacer :) , se hace así :

Código Delphi [-]
procedure  TForm1.exportarExcel();
var
  XApp:Variant;
  sheet, sheet2:Variant;
  r,c:Integer;
  q:Integer;
  row,col:Integer;
  i:Integer;
begin
  try
  begin
    XApp:=CreateOleObject('Excel.Application');
  end;
  except
    showmessage('Cagaste, no tenes excel instalado.');
    exit;
  end;
  //Abre un nuevo workbook
  XApp.WorkBooks.Add(-4167);
  //Agrega una hoja
  XApp.WorkBooks[1].WorkSheets.add;
  //Nombra las hojas
  XApp.WorkBooks[1].WorkSheets[1].Name:='Sheet1';
  XApp.WorkBooks[1].WorkSheets[2].Name:='Sheet2';
  //Referencia a cada hoja con una variable
  sheet :=  XApp.WorkBooks[1].WorkSheets['Sheet1'];
  sheet2 := XApp.WorkBooks[1].WorkSheets['Sheet2'];
  //carga datos
  for i := 0 to 10 do
  begin
    sheet.Cells[1,i+1]:='Titulo';
    sheet2.Cells[1,i+1]:='Titulo';
  end;
  //Carga datos
  for r:=0 to 10 do
    for c:=0 to 10 do
     begin
      //El rango de celdas está desplazado, con esto se acomoda
      row:=r+2;
      col:=c+1;
      sheet.Cells[row,col]:='Dato';
      sheet2.Cells[row,col]:='Dato';
     end;
  XApp.WorkSheets['Sheet1'].Range['A1:AA1'].Font.Bold:=True;
  XApp.WorkSheets['Sheet1'].Range['A1:AA1'].Font.Color := clblue;
  XApp.WorkSheets['Sheet1'].Range['A1:AA1'].Font.Color := clblue;
  XApp.WorkSheets['Sheet1'].Range['A1:K1'].Borders.LineStyle :=13;

  XApp.WorkSheets['Sheet1'].Range['A1:K11'].HorizontalAlignment := 3;
  XApp.WorkSheets['Sheet1'].Columns[1].ColumnWidth:=10;
  XApp.WorkSheets['Sheet1'].Columns[2].ColumnWidth:=10;
  XApp.WorkSheets['Sheet1'].Columns[3].ColumnWidth:=15;
  XApp.WorkSheets['Sheet1'].Columns[4].ColumnWidth:=6;
  XApp.WorkSheets['Sheet1'].Columns[5].ColumnWidth:=18;
  XApp.WorkSheets['Sheet1'].Columns[6].ColumnWidth:=9;
  XApp.WorkSheets['Sheet1'].Columns[7].ColumnWidth:=23;
  XApp.WorkSheets['Sheet1'].Columns[8].ColumnWidth:=23;
  XApp.WorkSheets['Sheet1'].Columns[9].ColumnWidth:=23;
  XApp.WorkSheets['Sheet1'].Columns[10].ColumnWidth:=10;
  xApp.caption := 'Exportado por Gracha-Expoted inc.';
  XApp.Visible:=true;
end;

Fernando 25-01-2006 02:06:42

Hola Perio:

Parece ser que no buscaste bien.

www.delphi.com.ar

clic en Componentes

FireSoft ExportSuite

Salu2.

Perio 25-01-2006 14:21:11

Ferbado:
Gracias por la respuesta y si tenias razon, no busqué bien. En realidad no encontre lo que me dijiste por que pensaba encontrar algo de código y vos te referias a componentes.
Éstos están interesantes por que como dice genera los xls en forma nativa sin necesitar office. Voy a tener que probarlos.

Saludos desde argentina

Perio

roman 25-01-2006 17:03:48

Cita:

Empezado por Perio
Ferbado:

¡Cuídate ese resfriado! :D

// Saludos


La franja horaria es GMT +2. Ahora son las 12:41:00.

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