Documentación de HotXLS

Método SaveAs

Guarda los cambios del libro de trabajo en un archivo o flujo diferente. Devuelve 1 si tiene éxito

Sintaxis

function SaveAs(FileName: WideString): Integer;
function SaveAs(FileName: WideString; FileFormat: TXLSFileFormat): Integer;
function SaveAs(Stream: TStream);
function SaveAs(Stream: TStream; FileFormat: TXLSFileFormat): Integer;
FileName WideString. Una cadena que indica el nombre del archivo que se va a guardar. Puede incluir una ruta completa; si no lo hace, Workbook guarda el archivo en la carpeta actual
FileFormat TXLSFileFormat opcional. Valor que indica el formato del archivo que se guardará. El valor predeterminado es xlExcel97
Stream TStream. Saves libro stream especificado en el Stream parameter

Descripción

FileFormat puede ser una de estas constantes TXLSFileFormat
xlExcel97 Formato de archivo MS Excel 97, 2000, XP, 2003
xlExcel5 Formato de archivo MS Excel 5, 95
xlHTML Formato de archivo HTML
xlRTF Formato de texto enriquecido (RTF)
xlCSV Formato de archivo de valores separados por comas (CSV)
xlText Formato de archivo de valores separados por tabulaciones (TSV)
xlUnicodeCSV Formato de archivo CSV de valores unicode separados por comas
xlUnicodeText Formato de archivo TSV de valores unicode separados por tabulaciones

Ejemplo

Este ejemplo crea un nuevo libro de trabajo con una hoja de cálculo y luego guarda el libro de trabajo

Var
  Workbook: IXLSWorkbook;
begin
  Workbook := TXLSWorkbook.Create; {create new Workbook}
  Workbook.Worksheets.Add;
  {...}
  //Save libro as Excel 97 archivo formato 
  Workbook.SaveAs('C:\book.xls');
  //Save libro as Excel 5-95 archivo formato 
  Workbook.SaveAs('C:\book5.xls', xlExcel5);
  //Save libro as HTML 
  Workbook.SaveAs('C:\book.html', xlHTML);
  //Save libro as RTF archivo 
  Workbook.SaveAs('C:\book.rtf', xlRTF);
  //Save active hoja de cálculo as comma separated valores (CSV)
  Workbook.SaveAs('C:\book.csv', xlCSV);
  //Save active hoja de cálculo as tab separated valores (TSV)
  Workbook.SaveAs('C:\book.tsv', xlText);
  //Save active hoja de cálculo as comma separated unicode valores (CSV)
  Workbook.SaveAs('C:\book.csv', xlUnicodeCSV);
  //Save active hoja de cálculo as tab separated unicode valores (TSV)
  Workbook.SaveAs('C:\book.tsv', xlUnicodeText);
end;
Este ejemplo guarda el libro de trabajo en un campo BLOB

var
  MS: TMemoryStream;
begin
  if not (ClientDataSet1.State in [dsInsert, dsEdit]) then
    ClientDataSet1.Insert;
  MS := TMemoryStream.Create();
  try
    FWorkbook.SaveAs(MS);
    ClientDataSet1Documents.LoadFromStream(MS);
  finally
    MS.Free;
  end;
  ClientDataSet1.Post;
end;