Necesito saber si hay alguna forma de exportar a excel el contenido de un DataSet y como podría hacerlo ya que lo que tengo es un TreeList y no se como guardarlo en .XLS.
1 Respuesta
Respuesta de gaunmanuel
1
1
gaunmanuel, Desarrollador de sistemas, delphi, SQL Interbase, Oracle
Bueno mira aquí te envío un función donde unicamente le pasas el Tquery que tiene la información que deseas exportar a un archivo de excel aunque este es un archivo .CSV ya que para exportar aun xls es más complicado, checa si este te funciona y si no pues intentaremos con el otro procedure TFrm_Modulos.GeneraArchivoExcel(Datos:Tquery); var OutputFile : textFile; NumFields,i : Integer; nombrefile : string; nombreFileE : PChar; CadenaStr, CadenaFin: string; Tamano : integer; begin if SaveExcel.execute then begin nombrefile := ChangeFileExt(SaveExcel.FileName,'.CSV'); FileCreate(concat(nombreFile,'.CSV')); // Genera el Archivo a Excel NumFields := Datos.FieldCount; AssignFile(OutputFile,nombrefile); rewrite(OutputFile); Datos.First; While not Datos.Eof do begin for i:=0 to NumFields-1 do begin try CadenaStr := Datos.Fields.Value; except try CadenaStr := FloatToStr(Datos.Fields.Value); except try CadenaStr := DateToStr(Datos.Fields.Value); except ShowMessage('I can not convert the Data to Excel File'); end; end; end; Tamano := Length(CadenaStr); CadenaFin := sinComas(CadenaStr, Tamano); Write(OutputFile,CadenaFin,','); end; Writeln(OutputFile); Datos.Next; end; Datos.First; CloseFile(OutputFile); nombreFileE := PChar(NombreFile); ShellExecute( self.handle, 'open', 'Excel.exe', nombrefileE, '', SW_SHOWNORMAL ); end; end;