Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-11-2018
Avatar de Soa Pelaez
Soa Pelaez Soa Pelaez is offline
Miembro
 
Registrado: nov 2015
Posts: 133
Poder: 9
Soa Pelaez Va por buen camino
Como guardar filex xlsx con FileStream

Buen día compañer@s

Tengo el siguiente código que me exporta correctamente un archivo a xls, lo que ya requiero es que me exporte o me guarde el archivo en xlsx. Obtenido del foro en el siguiente enlace http://clubdelpra.cluster003.ovh.net...32736&langid=5 en el proyecto "Grabar a Excel B.zip " subido por "rrf" en este proyecto en el "Crear informe realista" se crea por medio de un TFileStream un archivo de excel con extensión .xls, me funciona perfectamente, pero requiero guardar otro archivo con la extensión .xlsx, intente modificar solo el final del nombre con la nueva extensión pero no me funcionó.

Código Delphi [-]
procedure TMenu1.Button1Click(Sender: TObject);
var
  aa : string ;
  FStream: TFileStream;
  I, J: Integer;
begin

  aa := ExtractFilePath( Application.ExeName ) + trim ( Edit3.Text ) + '.xlsx' ;

  FStream := TFileStream.Create( aa, fmCreate);
//  FStream := TFileStream.Create('J:\e.xls', fmCreate);
  try

    XlsBeginStream(FStream, 0);

    for I := 1 to strtoint ( Edit2.Text ) do       // Columnas
      for J := 1 to strtoint ( Edit1.Text ) do     // Filas
      begin

        case RadioGroup1.ItemIndex of
          0: XlsWriteCellNumber(FStream, I, J, 34.34);
          1: XlsWriteCellRk(FStream, I, J, 3434);
          2: XlsWriteCellLabel(FStream, I, J, Format('Cell: %d,%d', [I, J]));
        end;

      end;

    XlsEndStream(FStream);

  finally
    FStream.Free;
  end;


  ShellExecute(Handle,nil, PChar( aa ), '', '',SW_SHOWNORMAL) ;


end;

Alguien puede ayudarme, se lo agradecería.
Responder Con Cita
  #2  
Antiguo 24-11-2018
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Mira este hilo, a ver si te sirve.
Responder Con Cita
  #3  
Antiguo 26-11-2018
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
El problema es que aunque parezca un cambio sin importancia (sólo cambiar la extensión del fichero) en realiz¡dad no lo es.
Realmente lo que tú necesitas es generar un fichero con un formato distinto.

El código que comentas, crear el fichero XLS "a mano" generando la cabecera de forma manual según el formato de los ficheros XLS. Para generar un fichero XLSX de la misma forma, deberías conecer el formato de este tipo y generarlo manualmente de la misma forma. Cosa que no veo fácil.

Hay otra forma de generar los ficheros XLSX desde delphi que es utilizando Automatización. Aquí tienes un ejemplo de TiammatMX de cómo hacerlo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 26-11-2018
Avatar de Soa Pelaez
Soa Pelaez Soa Pelaez is offline
Miembro
 
Registrado: nov 2015
Posts: 133
Poder: 9
Soa Pelaez Va por buen camino
La verdad requiero realizar ello con TFileStream y sin tener instalado ningún paquete de office. Igual muchas gracias.
Responder Con Cita
  #5  
Antiguo 26-11-2018
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿No te sirve exportarlo a formato .csv?
De ahí puedes leerlo en cualquier otro programa, y si es una hoja de cálculo entonces leerá correctamente las filas y columnas, ya que todas tienen para importar ficheros .csv
Responder Con Cita
  #6  
Antiguo 26-11-2018
Avatar de Soa Pelaez
Soa Pelaez Soa Pelaez is offline
Miembro
 
Registrado: nov 2015
Posts: 133
Poder: 9
Soa Pelaez Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿No te sirve exportarlo a formato .csv?
De ahí puedes leerlo en cualquier otro programa, y si es una hoja de cálculo entonces leerá correctamente las filas y columnas, ya que todas tienen para importar ficheros .csv
No me sirve así, porque el requerimiento es en formato .xlsx. Igual muchas gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Modificar un documento MS EXCEL 2003 [.xls] o 2007 [.xlsx] adrall Conexión con bases de datos 0 02-05-2016 16:12:11
delphi 7 Exportar a xlsx desde reportbuilder karenthyuliana Impresión 0 24-01-2012 16:28:36
exportar datos de Dataset a XLSX nextor Conexión con bases de datos 3 20-12-2010 19:43:22
FileStream pa copiar todo un directorio o carpeta Oxa78 Varios 0 23-03-2007 01:09:39
FileStream a FileName Delfino Varios 1 09-12-2003 17:14:16


La franja horaria es GMT +2. Ahora son las 02:32:33.


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