| FileName | WideString. Cadena que indica el nombre del fichero que se va a guardar. Puede incluir una ruta completa; si no lo hace, Workbook guarda el fichero en la carpeta actual |
| FileFormat | TXLSFileFormat opcional. Un valor que indica el formato del archivo que se va a guardar. El valor predeterminado es xlExcel97 |
| Stream | TStream. Saves libro stream especificado en el Stream parameter |
La salida a archivo XLS completa la serialización en un archivo de ensayo hermano antes de reemplazar el destino; una confirmación fallida deja el destino existente intacto y comunica el error nativo capturado a través del diagnóstico del libro
En sistemas de archivos de Windows que admiten el cambio de nombre POSIX, el reemplazo puede tener éxito mientras sigue abierto un identificador de metadatos o de lector que permite el borrado; un lector existente sigue viendo el objeto de archivo original, y un nuevo lector del nombre de destino ve el reemplazo completado
El destino debe permitir el acceso de borrado y el uso compartido de borrado, y los destinos de solo lectura siguen rechazándose; una confirmación fallida no se reintenta, mientras que los destinos ausentes, las rutas reparse y los sistemas de archivos no admitidos usan la ruta de confirmación heredada seleccionada antes del reemplazo
El reemplazo atómico protege la publicación de un archivo completado; no proporciona aislamiento de comparación e intercambio frente a otro proceso que reemplace de forma concurrente el mismo nombre
| 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 |
Var
Workbook: IXLSWorkbook;
begin
Workbook := TXLSWorkbook.Create; {create new Workbook}
Workbook.Worksheets.Add;
{...}
//Save Workbook as Excel 97 file format
Workbook.SaveAs('C:\book.xls');
//Save Workbook as Excel 5-95 file format
Workbook.SaveAs('C:\book5.xls', xlExcel5);
//Save Workbook as HTML
Workbook.SaveAs('C:\book.html', xlHTML);
//Save Workbook as RTF file
Workbook.SaveAs('C:\book.rtf', xlRTF);
//Save active Worksheet as comma separated values (CSV)
Workbook.SaveAs('C:\book.csv', xlCSV);
//Save active Worksheet as tab separated values (TSV)
Workbook.SaveAs('C:\book.tsv', xlText);
//Save active Worksheet as comma separated unicode values (CSV)
Workbook.SaveAs('C:\book.csv', xlUnicodeCSV);
//Save active Worksheet as tab separated unicode values (TSV)
Workbook.SaveAs('C:\book.tsv', xlUnicodeText);
end;
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;