Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-08-2010
carlos gonzalez carlos gonzalez is offline
Miembro
 
Registrado: may 2005
Posts: 108
Poder: 20
carlos gonzalez Va por buen camino
Bajar Información a Archivos de Excel

Hola amigos, Alguien sabe si existe algun componete para bajar Información a Archivos De Excel pero sin que la PC tenga instalado el Excel O El Office, el Sistema lo tengo desarrollado en Delphi 7, Si alguien sabe si esto es posible se los voy agradecer bastatante que lo compartan con migo.

Saludos...

Su amigo Charlesss
Responder Con Cita
  #2  
Antiguo 16-08-2010
Mystery Mystery is offline
Miembro
 
Registrado: jul 2007
Ubicación: Santiago de Cuba
Posts: 69
Poder: 17
Mystery Va por buen camino
Cita:
Empezado por carlos gonzalez Ver Mensaje
Hola amigos, Alguien sabe si existe algun componete para bajar Información a Archivos De Excel pero sin que la PC tenga instalado el Excel O El Office, el Sistema lo tengo desarrollado en Delphi 7, Si alguien sabe si esto es posible se los voy agradecer bastatante que lo compartan con migo.

Saludos...

Su amigo Charlesss
bueno no entiendo el termino bajar informacion.. te refieres a descargar informacion de internet o a salvar cierta informacion en un fichero excel...??
si es salvar por ahi andaban unos componentes para salvar a excel... creo que los hizo clubdelphi.com.ar... no estoy seguro ademas por ejemplo yo uso este... codigo que salvas lo que esta en un DBGrid...

Código Delphi [-]
procedure exportarGridExcel(mGrid: tdbgrid);
var
  rangoExcel : Excel2000.range;
  i, fila : integer;
  mMarcador : Tbookmarkstr;
  mTabla : tdataset;
  aplicacionExcel : TExcelApplication;
begin
  aplicacionExcel := TExcelApplication.Create(nil);
  mTabla := mGrid.datasource.dataset;
  aplicacionExcel.Visible[0] := true;
  aplicacionExcel.workbooks.add(NULL, 0);
  rangoExcel := aplicacionExcel.ActiveCell;
  for i:=0 to  GDATA.Columns.Count-1 do
  begin
    if GDATA.Columns[i].Visible then
     begin
       rangoExcel.Value := mTabla.Fields[i].DisplayLabel;
       rangoExcel := rangoExcel.Next;
     end;
  end;
  rangoExcel.AutoFormat(10, NULL, NULL, NULL, NULL, NULL, NULL);
  mTabla.DisableControls;
  try
    mMarcador := mTabla.Bookmark;
    try
      mTabla.First;
      fila := 2;
      while not mTabla.Eof do
      begin
        rangoExcel := aplicacionExcel.Range['A' + inttostr(fila), 'A' + inttostr(fila)];
        for i:=0 to  GDATA.Columns.Count-1 do
        begin
          try
            if GDATA.Columns[i].Visible then
            begin
              rangoExcel.Value :=GDATA.Fields[i].asstring;
              rangoExcel := rangoExcel.Next;
            end;
          except
          end;
        end;
        mTabla.Next;
        Inc(fila);
      end;
      finally
        mTabla.Bookmark := mMarcador;
      end;
    finally
      mTabla.EnableControls;
    end;

 end;

eso es todo espero que te sirva... OK sin mas

yo
Responder Con Cita
  #3  
Antiguo 17-08-2010
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 913
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Este codigo lo encontre un dia navegando por la web...

No recuerdo al autor...Si alguien lo sabe seria bueno que lo escribiera...

Código Delphi [-]
procedure TForm1.BitBtn5Click(Sender: TObject);
const
     CXlsBof: array[0..5] of Word = ($809, 8, 00, $10, 0, 0);
     CXlsEof: array[0..1] of Word = ($0A, 00);
     CXlsLabel: array[0..5] of Word = ($204, 0, 0, 0, 0, 0);
     CXlsNumber: array[0..4] of Word = ($203, 14, 0, 0, 0);
     CXlsRk: array[0..4] of Word = ($27E, 10, 0, 0, 0);
var
  FStream: TFileStream;
  I, J: Integer;

      procedure XlsBeginStream(XlsStream: TStream; const BuildNumber: Word);
      begin
           CXlsBof[4] := BuildNumber;
           XlsStream.WriteBuffer(CXlsBof, SizeOf(CXlsBof));
      end;

      procedure XlsEndStream(XlsStream: TStream);
      begin
           XlsStream.WriteBuffer(CXlsEof, SizeOf(CXlsEof));
      end;

      procedure XlsWriteCellRk(XlsStream: TStream; const ACol, ARow: Word; const AValue: Integer);
      var
         V: Integer;
      begin
           CXlsRk[2] := ARow;
           CXlsRk[3] := ACol;
           XlsStream.WriteBuffer(CXlsRk, SizeOf(CXlsRk));
           V := (AValue shl 2) or 2;
           XlsStream.WriteBuffer(V, 4);
      end;

      procedure XlsWriteCellNumber(XlsStream: TStream; const ACol, ARow: Word; const AValue: Double);
      begin
           CXlsNumber[2] := ARow;
           CXlsNumber[3] := ACol;
           XlsStream.WriteBuffer(CXlsNumber, SizeOf(CXlsNumber));
           XlsStream.WriteBuffer(AValue, 8);
      end;

      procedure XlsWriteCellLabel(XlsStream: TStream; const ACol, ARow: Word; const AValue: string);
      var
        L: Word;
      begin
           L := Length(AValue);
           CXlsLabel[1] := 8 + L;
           CXlsLabel[2] := ARow;
           CXlsLabel[3] := ACol;
           CXlsLabel[5] := L;
           XlsStream.WriteBuffer(CXlsLabel, SizeOf(CXlsLabel));
           XlsStream.WriteBuffer(Pointer(AValue)^, L);
      end;

begin
     FStream := TFileStream.Create('D:\sample.xls', fmCreate);
     try
        XlsBeginStream(FStream, 0);
        for I := 0 to 99 do
          for J := 0 to 99 do
          begin
               //XlsWriteCellNumber(FStream, I, J, 34.34);
               // XlsWriteCellRk(FStream, I, J, 3434);
               XlsWriteCellLabel(FStream, I, J, Format('Cell: %d,%d', [I, J]));
          end;
        XlsEndStream(FStream);
     finally
       FStream.Free;
     end;

end;

Saludos
Responder Con Cita
  #4  
Antiguo 17-08-2010
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Cita:
Empezado por carlos gonzalez Ver Mensaje
Hola amigos, Alguien sabe si existe algun componete para bajar Información a Archivos De Excel pero sin que la PC tenga instalado el Excel O El Office...
Yo he desarrollado un juego de componentes que hacen exactamente esta tarea, se llaman Export Suite, vienen con código y son totalmente gratuitos.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #5  
Antiguo 18-08-2010
rrf rrf is offline
Miembro
 
Registrado: ago 2003
Ubicación: S/C Tenerife, España
Posts: 454
Poder: 21
rrf Va por buen camino
Smile

Hola.

Cloayza, ese código que incluyes viene de un archivo comprimido que se incluyó en este hilo del foro.

También se incluye el enlace desde el que se obtuvo el código original (el que tu aportaste es una adaptación para que fácilmente se pueda ver como funciona). Está en Creating excel file without OLE, en las páginas de descarga de Embarcadero.

Saludos.

Ramón.
Responder Con Cita
  #6  
Antiguo 20-08-2010
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 913
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Amigo rrf muchas gracias por el aporte...

No recordaba de donde lo saque...Nuevamente gracias.

Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
copiar informacion de excel a delphi DarkBlue Servers 1 28-06-2010 12:20:13
Bajar varios archivos de internet con idFTP marilinspi Internet 5 23-01-2010 14:42:21
Problemas al bajar archivos del CLUB José Luis Garcí Varios 4 07-08-2007 09:32:40
Problema para bajar informacion de IB a dbf Jorge Murguia Conexión con bases de datos 4 07-11-2005 17:38:05
Informacion De Excel A Access OMAR05 Tablas planas 2 09-09-2005 10:41:33


La franja horaria es GMT +2. Ahora son las 00:51:58.


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
Copyright 1996-2007 Club Delphi