Documentación de HotXLS

Clase TXLSXWorkbook

Contenedor de nivel superior para un libro de Excel 2007+ (.xlsx) workbook. Declared in lxHandleX. Holds a TXLSXSheets collection and provides SaveAs / Open como puntos de entrada para libros OOXML, importación de CSV / TSV y hojas de cálculo OpenDocument (.odsContenedor principal para un libro de trabajo Excel 2007+ (.xlsx). Declarado en lxHandleX. Contiene una coleccion TXLSXSheets y las paletas de recursos compartidos (fuentes, rellenos, bordes, formatos de numero, estilos)

Declaracion

type
  TXLSXFileFormat = (xlsxOpenXMLWorkbook, xlsxOpenDocumentSpreadsheet,
    xlsxOpenXMLTemplate, xlsxOpenXMLMacroEnabledTemplate, xlsxExcelBinaryWorkbook);

  TODSExportOptions = class
    constructor Create;
    property Generator: WideString;
    property IncludeCharts: Boolean;
    property IncludeImages: Boolean;
  end;

  TXLSXWorkbook = class
    constructor Create;
    destructor Destroy; override;
    function CreateLoadedCellCursor: IXLSLoadedCellCursor; overload;
    function CreateLoadedCellCursor(AIncludeStoredBlanks: Boolean): IXLSLoadedCellCursor; overload;
    function CreateReadOnlyView: IXLSReadOnlyWorkbookView;
    property RenderCalibration: TXLSRenderCalibration;
    function CaptureRenderCalibration: TXLSRenderCalibration;
    procedure ResetRenderCalibration;
    function CreateRenderGeometry(ABackend: TXLSRenderGeometryBackend;
      ACacheCapacity: Integer = 4096): IXLSRenderGeometry;
    function SaveAs(const FileName: WideString): Integer; overload;
    function SaveAs(const FileName: WideString; FileFormat: TXLSXFileFormat): Integer; overload;
    function SaveAs(Stream: TStream): Integer; overload;
    function SaveAs(Stream: TStream; FileFormat: TXLSXFileFormat): Integer; overload;
    function GetConversionReport(ATarget: TXLSConversionTarget): TXLSConversionReport;
    function SaveAsChecked(Stream: TStream; FileFormat: TXLSXFileFormat;
      AllowLossy: Boolean = False): Integer; overload;
    function SaveAsChecked(const FileName: WideString; FileFormat: TXLSXFileFormat;
      AllowLossy: Boolean = False): Integer; overload;
    function Open(const FileName: WideString): Integer; overload;
    function Open(const FileName: WideString; const Password: WideString): Integer; overload;
    function Open(Stream: TStream): Integer; overload;
    function OpenCSV(const FileName: WideString): Integer; overload;
    function OpenCSV(const FileName: WideString; ASeparator: WideChar;
      ADetectTypes: Boolean): Integer; overload;
    function OpenCSV(Stream: TStream): Integer; overload;
    function OpenCSV(Stream: TStream; ASeparator: WideChar;
      ADetectTypes: Boolean): Integer; overload;
    function OpenODS(const FileName: WideString): Integer; overload;
    function OpenODS(Stream: TStream): Integer; overload;
    function SaveAsODS(const FileName: WideString): Integer; overload;
    function SaveAsODS(Stream: TStream): Integer; overload;
    function SaveAsODS(const FileName: WideString; Options: TODSExportOptions): Integer; overload;
    function SaveAsODS(Stream: TStream; Options: TODSExportOptions): Integer; overload;
    function GetODSSheetNames(const FileName: WideString; AList: TStrings): Integer; overload;
    function GetODSSheetNames(Stream: TStream; AList: TStrings): Integer; overload;
    function GetSheetNames(const FileName: WideString; AList: TStrings): Integer; overload;
    function GetSheetNames(Stream: TStream; AList: TStrings): Integer; overload;
    function SaveAsCSV(const FileName: WideString): Integer; overload;
    function SaveAsCSV(const FileName: WideString; SheetIndex: Integer; Delimiter: WideChar): Integer; overload;
    function SaveAsCSV(Stream: TStream): Integer; overload;
    function SaveAsCSV(Stream: TStream; SheetIndex: Integer; Delimiter: WideChar): Integer; overload;
    function SaveAsHTML(const FileName: WideString): Integer; overload;
    function SaveAsHTML(const FileName: WideString; Options: TXLSXHtmlExportOptions): Integer; overload;
    function SaveAsHTML(const FileName: WideString; SheetIndex: Integer): Integer; overload;
    function SaveAsHTML(const FileName: WideString; SheetIndex: Integer; Options: TXLSXHtmlExportOptions): Integer; overload;
    function SaveAsHTML(Stream: TStream): Integer; overload;
    function SaveAsHTML(Stream: TStream; Options: TXLSXHtmlExportOptions): Integer; overload;
    function SaveAsHTML(Stream: TStream; SheetIndex: Integer): Integer; overload;
    function SaveAsHTML(Stream: TStream; SheetIndex: Integer; Options: TXLSXHtmlExportOptions): Integer; overload;
    function SaveAsRTF(const FileName: WideString): Integer; overload;
    function SaveAsRTF(const FileName: WideString; SheetIndex: Integer): Integer; overload;
    function SaveAsRTF(Stream: TStream): Integer; overload;
    function SaveAsRTF(Stream: TStream; SheetIndex: Integer): Integer; overload;
    // AES encryption (ECMA-376 Standard Encryption) write path.
    // OpenEncrypted still raises for encrypted packages.
    function SaveAsEncrypted(const FileName, APassword: WideString): Integer;
    function OpenEncrypted(const FileName, APassword: WideString): Integer;
    function CanReadEncrypted(const FileName: WideString): Boolean;
    function Calculate(const Formula: WideString): Variant;
    function CalculateAndVerify: Integer; overload;
    function CalculateAndVerify(out AMismatches: TArray<TXLSVerifyMismatch>): Integer; overload;
    property OnUserFunction: TXLSUserFunctionEvent;
    property OnUserFunctionEx: TXLSUserFunctionExEvent;
    property AllowUnsafeFormulaCallbacks: Boolean;
    // Document properties (docProps/core.xml + docProps/app.xml).
    property Title, Author, Subject, Keywords, Description,
             Category, LastModifiedBy, Company,
             Application, AppVersion: WideString;
    property Created, Modified: TDateTime;
    // Workbook protection (16-bit legacy hash).
    procedure ProtectWorkbook; overload;
    procedure ProtectWorkbook(const APassword: WideString); overload;
    procedure ProtectWorkbook(const APassword: WideString; ALockStructure, ALockWindows: Boolean); overload;
    procedure UnProtectWorkbook;
    property IsWorkbookProtected: Boolean;
    property LockStructure, LockWindows: Boolean;
    // VBA project payload (round-trips byte-for-byte). Workbook is saved
    // with macro-enabled content type when HasVbaProject is True.
    procedure LoadVbaProjectFromFile(const AFileName: WideString);
    procedure ClearVbaProject;
    function HasVbaProject: Boolean;
    property VbaProjectDefined: Boolean;
    property VbaProject: AnsiString;
    property ParsedVBAProject: TXLSVBAProject;
    // Unknown package and workbook extension preservation
    procedure ClearUnsupportedParts;
    function UnsupportedPartCount: Integer;
    function UnsupportedPartBytes: Int64;
    property PreserveUnsupportedParts: Boolean;
    // Chart sheet helper — creates a sheet flagged IsChartSheet and
    // seeds Charts[0] with a default full-page anchor.
    function AddChartSheet(const AName: WideString;
      AChartType: TXLSXChartType; const ATitle: WideString): TXLSXWorksheet;
    // Streaming SaveAs path (TXLSWideStringBuilder + one sheet at a time).
    property StreamingWrite: Boolean;
    // Streaming parallel Open path
    property ParallelParse: Boolean;
    property ParallelParseThreads: Integer;
    // Workbook-level collections.
    property ActiveSheet: Integer;
    property Minimized: Boolean;
    property WindowHidden: Boolean;
    property ShowHorizontalScroll: Boolean;
    property ShowVerticalScroll: Boolean;
    property ShowSheetTabs: Boolean;
    property XWindow: Integer;
    property YWindow: Integer;
    property WindowWidth: Integer;
    property WindowHeight: Integer;
    property TabRatio: Integer;
    property FirstSheet: Integer;
    property AutoFilterDateGrouping: Boolean;
    property Date1904: Boolean;
    // Workbook calculation policy
    property Iterate: Boolean;
    property IterateCount: Integer;
    property IterateDelta: Double;
    property CalcId: Integer;
    property FullCalcOnLoad: Boolean;
    property CalcMode: WideString;
    property RefMode: WideString;
    property ForceFullCalc: Boolean;
    property CalcCompleted: Boolean;
    property CalcOnSave: Boolean;
    property FullPrecision: Boolean;
    property ConcurrentCalc: Boolean;
    property ConcurrentManualCount: Integer;
    function CreateWorkspaceWorkbook: IXLSWorkspaceWorkbook;
    procedure RegisterExternalWorkbook(const AWorkbookName: WideString;
      AWorkbook: TXLSXWorkbook);
    procedure UnregisterExternalWorkbook(const AWorkbookName: WideString);
    property SourceFormat: TXLSXFileFormat;
    property IndexedColor[Index: Integer]: LongWord;
    function  NearestIndexedColor(AArgb: LongWord;
      out AMatch: TXLSNearestIndexedColorMatch): Boolean;
    function  ScanIndexedColorUsage: TXLSIndexedColorUsageArray;
    function  BuildBiffPalettePlan: TXLSBiffPalettePlan;
    function  ApplyBiffPalettePlan(
      const APlan: TXLSBiffPalettePlan): Boolean;
    function  HasCustomIndexedColor(Index: Integer): Boolean;
    function  CustomIndexedColorCount: Integer;
    procedure ResetIndexedColors;
    property Sheets: TXLSXSheets;
    property Fonts: TXLSXFonts;
    property Fills: TXLSXFills;
    property Borders: TXLSXBorders;
    property NumberFormats: TXLSXNumberFormats;
    property Alignments: TXLSXAlignments;
    property DefinedNames: TXLSXDefinedNames;
    property ExternalLinks: TXLSXExternalLinks;
    property ExternalWorkspace: TXLSWorkbookWorkspace;
  end;
      

Miembros

Sheetshoja de cálculo colección. See TXLSXSheets
Fontslibro-level fuente palette. celdas pick fuente por setting TXLSXCell.FontIndex 1-basado índice en este colección. See TXLSXFont / TXLSXFonts
FillsPaleta de rellenos del libro TXLSXCell.FillIndex a un índice basado en 1 dentro de esta colección. Véase TXLSXFill / TXLSXFills
BordersPaleta de bordes a nivel de libro. Las celdas eligen un borde estableciendo TXLSXCell.BorderIndex a un índice basado en 1 dentro de esta colección. Véase TXLSXFill / TXLSXFills
NumberFormatslibro-level borde palette. celdas pick borde por setting TXLSXCell.NumberFormatIndex 1-basado índice en este colección. See TXLSXBorder / TXLSXBorders
DefinedNamesPaleta de formatos numéricos del libro TXLSXNumberFormat / TXLSXNumberFormats
Calculatelibro-level named rangos (libro-scoped o hoja-scoped). See = Evalúa fórmulas en la hoja activa OnUserFunction handle custom o unsupported funciones
CreateLoadedCellCursorCrea un cursor de estado constante en orden por filas sobre los valores y fórmulas XLSX almacenados, con una sobrecarga que también emite los blancos con estilo independiente como xlckBlank. Los bloques dispersos y el almacenamiento empaquetado se recorren sin materializar la representación empaquetada. Vea método CreateLoadedCellCursor
CreateReadOnlyViewCrea una vista de modelo compartido de tiempo constante con una hoja activa local, instantáneas por valor, resultados de fórmulas cacheados, evaluación aislada de fórmulas opcional, lecturas directas de celdas empaquetadas, ciclo de vida con recuento de referencias a través de IXLSXWorkbookOwnery exclusión de escritura fail-fast; la IXLSReadOnlyWorkbookView también informa de SheetCount para los llamadores que enumeran hojas sin tocar el modelo del libro. Vea método CreateReadOnlyView
SaveSemanticSnapshot, ComputeSemanticHashTransmite por secuencias una representación canónica versionada de la semántica del libro o calcula su SHA-256 en minúsculas sin materializar la instantánea completa. Vea métodos de instantánea semántica y hash
RenderCalibration, CaptureRenderCalibration, ResetRenderCalibrationAsigna atómicamente una calibración de renderizado validada, captura una instantánea de valores independiente para una operación o restaura los valores predeterminados; la configuración en tiempo de ejecución no se serializa y por sí misma no cambia el tamaño de filas ni columnas de la hoja de cálculo. Vea valores e instantáneas de calibración de renderizado
CreateRenderGeometryCrea un servicio de geometría y medición de fuentes propiedad de la operación, con calibración inmutable, identidad de generación del libro y del backend, más una caché local acotada; AutoFit captura un servicio por operación y la paginación captura uno por construcción sin escribir dimensiones de la hoja de cálculo. Vea geometría de renderizado y medición de fuentes
OnUserFunction, OnUserFunctionExCallback usado por Calculate cuando fórmula calls custom o unsupported función. See OnUserFunction / OnUserFunctionEx callback
AllowUnsafeFormulaCallbacksSu valor predeterminado es false e impide que los nombres de funciones externas o de estilo macro peligrosos lleguen a los manejadores de funciones de usuario antes de evaluar los argumentos. Vea política de seguridad de devoluciones de llamada
GetSheetNames(FileName, AList), GetSheetNames(Stream, AList)Lee los nombres de hoja desde xl/workbook.xml XML, XLSX xl/workbook.xml y añade nombres de hoja a AList en el orden del libro sin cargar el XML de las hojas de trabajo. La sobrecarga con flujo espera un flujo de paquete XLSX completo. Devuelve el número de nombres leídos, o -1 when the package cannot be opened
Alignmentslibro-level celda-alignment palette. celdas pick entrada por setting TXLSXCell.AlignmentIndex 1-basado índice en este colección. See TXLSXAlignment
Document propertiesTitle, Author, Subject, Keywords, Description, Category, LastModifiedBy, Company, Application, AppVersion, Created, Modified. Establecer cualquiera de ellos rellena docProps/core.xml + docProps/app.xml Propiedades del documento LastModifiedBy, AppVersion, SaveAs
ProtectWorkbook / UnProtectWorkbooklibro protection toggle con optional 16-bit legacy contraseña hash y LockStructure / LockWindows flags. Reflected as <workbookProtection> en xl/libro.xml
LoadVbaProjectFromFile / VbaProject / HasVbaProject / VbaProjectDefinedLoadVbaProjectFromFile imports a raw vbaProject.bin payload; VbaProject exposes the bytes; HasVbaProject and read-only VbaProjectDefined informan ambos de si hay un payload presente. Guarde con un .xlsm Carga del proyecto VBA
ParsedVBAProjectVista analizada del proyecto VBA OLE, VBA, SaveAs vbaProject.bin payload. Cuando el payload es un almacenamiento OLE VBA válido, devuelve un TXLSVBAProject que expone los nombres de los módulos y el texto fuente; en caso contrario devuelve nil. The raw VbaProject payload sigue siendo los bytes de referencia usados para la ida y vuelta de SaveAs/Open
AddChartSheet(Name, Type, Title)Creates a worksheet flagged IsChartSheet = True and seeds Charts[0] con un ancla de página completa razonable por defecto. SaveAs escribe tales hojas en xl/chartsheets/sheetN.xmlCrea una hoja de gráfico SaveAs TXLSXChart
ParallelParseCuando es True, el Open multipágina transmite las entradas ZIP de las hojas de cálculo directamente a infladores y lectores XML locales de cada worker. No se retienen copias de preparación del XML de hojas inflado, y el origen del paquete solo se bloquea para cada lectura posicionada. Establezca False para analizar una hoja de cálculo a la vez. El valor predeterminado es True
ParallelParseThreadsEstablece el número máximo de flujos de hojas de cálculo que se analizan concurrentemente durante Open. Cero selecciona el número automático de workers, y los valores positivos establecen un límite explícito. Los conjuntos de trabajo activos de infladores y lectores XML se acotan a este recuento
StreamingWriteWhen True, SaveAs uses WriteWorksheetXmlStreaming por hoja — no se mantiene caché de sheetXmls, sharedStrings.xml se emite al final, después de que cada hoja haya poblado el SST. Combinado con el TXLSWideStringBuilder Escritura en streaming por hoja SaveAs, sharedStrings.xml, SST
PreserveUnsupportedParts / ClearUnsupportedPartsPreserveUnsupportedParts es True de forma predeterminada y retiene durante Open y SaveAs las partes del paquete alcanzables por relaciones desconocidas, las declaraciones de espacios de nombres extranjeros de la raíz del libro, los atributos de compatibilidad de marcado y las cargas completas de <extLst> a nivel de libro. Las referencias de relación dentro de la carga de extensión preservada se remapean cuando los IDs generados entran en conflicto con el origen. Establezca la propiedad en False antes de Open, o llame a ClearUnsupportedParts, para descartar este estado. Los diagnósticos UnsupportedPartCount y UnsupportedPartBytes cuentan las partes preservadas del paquete y no incluyen los metadatos XML en línea del libro
PreserveRawPartsSu valor predeterminado es True y permite que las operaciones SaveAs respaldadas por archivo abran un archivo de origen privado validado y copien sin cambios las entradas opacas de tema, VBA, conexiones, vínculos externos, imágenes, gráficos, tablas dinámicas y alcanzables por relaciones, con sus cargas comprimidas originales. Los guardados de archivo exitosos establecen una nueva línea base limpia para guardados posteriores. Los libros respaldados por flujo, un archivo de origen modificado, cargas editadas, métodos de compresión no soportados y tamaños comprimidos no válidos usan reversión de serialización transaccional o rechazo
SaveAsEncrypted / OpenEncrypted / CanReadEncryptedCompatibilidad de escritura con el cifrado Standard Encryption de ECMA-376 SaveAsEncrypted escribe un contenedor OLE Compound File protegido con AES-128 conforme al estándar para contraseñas no vacías, usando la aceleración AES-NI cuando está disponible y una alternativa por software portable en caso contrario. La salida cifrada se abre en Excel 2007 y posteriores con la contraseña usada para guardarla. CanReadEncrypted detects the OLE2 magic bytes; OpenEncrypted vuelve de forma transparente al Open for unencrypted files and still raises EXlsxEncryptionNotImplemented Compatibilidad de escritura con cifrado ECMA-376 ECMA, AES, OLE, NI, OLE2
SaveAs(FileName)Escribe el libro en el archivo indicado. Devuelve 1 en caso de éxito y un valor negativo en caso de fallo; si el libro no tiene hojas, se añade una hoja Sheet1 predeterminada antes de escribir
Esta sobrecarga y SaveAs(FileName, FileFormat) preparan la salida por etapas antes de reemplazar el destino Si el reemplazo falla, el valor devuelto es -1 y LastDiagnostic informa de xlsDiagnosticOutputCommitFailed (1005), del NativeCodede Windows original y de su mensaje de error del sistema El destino anterior y el FileName del libro quedan sin cambiar; la salida temporal se libera y un guardado posterior borra el diagnóstico previo
SaveAs(FileName, FileFormat)Acepta xlsxOpenXMLWorkbook para la salida OOXML ordinaria, xlsxOpenDocumentSpreadsheet para ODS, xlsxOpenXMLTemplate para una plantilla XLTX sin macros o xlsxOpenXMLMacroEnabledTemplate para una plantilla XLTM, con salida buffered y en streaming admitidas para todas las opciones OOXML
La salida de plantillas escribe application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml para /xl/workbook.xml; use la extensión .xltx en los archivos y application/vnd.openxmlformats-officedocument.spreadsheetml.template al servir el paquete por HTTP
El formato debe seleccionarse explícitamente: ni la extensión del archivo ni una plantilla importada cambian la salida predeterminada de SaveAs
Si hay un proyecto VBA presente, la salida XLTX devuelve -1 con un diagnóstico de formato no soportado antes de escribir el destino; XLTM conserva un proyecto VBA existente y también acepta un libro sin macros
SaveAsODS sigue siendo el acceso directo designado para la salida ODS, con el control opcional TODSExportOptions
GetConversionReport / SaveAsCheckedInspeccione un informe de conversión de características conocidas, propiedad del llamador y libre de mutaciones, o rechace las características degradadas y descartadas antes de escribir dejando AllowLossy=False El guardado con pérdida explícito sigue rechazando las conversiones no soportadas; consulte fidelidad de cálculo y conversión para conocer los límites de destino, propiedad, diagnóstico y conservación
SaveAs(Stream) / SaveAs(Stream, FileFormat)Escribe el libro directamente en cualquier TStream, y la sobrecarga con FileFormat acepta xlsxOpenXMLWorkbook, xlsxOpenDocumentSpreadsheet, xlsxOpenXMLTemplateo xlsxOpenXMLMacroEnabledTemplate, para libros OOXML en memoria, hojas de cálculo ODS, plantillas XLTX o plantillas XLTM
Devuelve 1 en caso de éxito, y los guardados en flujo respetan RecalcBeforeSave: el modo manual conserva las cachés de fórmulas existentes, mientras que las políticas dirty y always las actualizan antes de la serialización
Quien llama conserva la propiedad del flujo; la cancelación antes de empezar a escribir preserva su contenido y su posición, mientras que un fallo después de iniciada la serialización puede dejar salida parcial
Open(FileName)Lee un archivo .xlsx de OOXML y reemplaza la Sheets collection with its contents. Returns 1 Carga un paquete OOXML .xlsx OOXML, xlsx
Open(FileName, Password)Reserved para future encrypted XLSX compatibilidad. Behaves like Open(FileName) today — contraseña es ignored
Open(Stream)Reads OOXML.xlsx archive desde TStream. devuelve 1 on success
OpenCSV(FileName) / OpenCSV(Stream)Importación de CSV o TSV CSV, TSV, BOM, UTF-8, UTF-16, RFC,, ;, tabulador o barra vertical), detección de codificación UTF-8 / UTF-16 basada en BOM, campos entrecomillados al estilo RFC 4180 e inferencia opcional del tipo de valor mediante el ADetectTypes overloads. Calling Open(FileName) on .csv or .tsv se dirige automáticamente a este importador. Consulte método OpenCSV
OpenODS(FileName) / OpenODS(Stream)Importación de ODS OpenDocument, AutoFilter, OpenFormula, ODS.odsSaveAsODS(FileName) / SaveAsODS(Stream) content.xml, shared style information from styles.xmlExporta ODS como OpenDocument Spreadsheet OpenDocument, ODF, AutoFilter, HotXLS
SaveAsODS(FileName) / SaveAsODS(Stream), with optional TODSExportOptionsControl de la exportación ODS ODS, HotXLS mimetype, manifiesto, metadatos, estilos y contenido de hojas directamente, transportando valores con tipo, fórmulas, estilos, texto enriquecido, dimensiones, celdas combinadas, hipervínculos, imágenes, gráficos, rangos con nombre, rangos de AutoFilter, formatos condicionales, validaciones de datos, paneles inmovilizados, configuración de página, encabezados/pies de página, rangos de impresión, saltos de página manuales, grupos de esquema, color de pestaña y visibilidad de hoja allí donde esas funciones estén representadas en el modelo de libro de HotXLS. Al pasar opciones de exportación, incluido nil, se conserva la política normal de recálculo, la cancelación del progreso, los diagnósticos y la protección contra escritura. La salida a archivo prepara un archivo hermano y solo reemplaza el destino tras una serialización exitosa; un fallo de serialización o una cancelación antes de la confirmación preservan el destino anterior. El progreso de escritura informa de cada tabla completada, y ppsEnd es una notificación terminal cuya petición de Abort no puede cancelar un guardado ya completado. La salida en flujo conserva la propiedad del llamador y el comportamiento ordinario de guardado en flujo, que puede dejar salida parcial una vez iniciada la serialización
TODSExportOptionsLectura de nombres de hoja ODS ODS Generator overrides the meta:generator value in meta.xml; un valor vacío usa la cadena de generador integrada de HotXLS. IncludeCharts and IncludeImages tienen el valor predeterminado True y, cuando son False, eliminan juntos los marcos de dibujo, las partes del paquete y las entradas del manifiesto correspondientes, de modo que la salida no quede con referencias huérfanas a gráficos o imágenes. El llamador es propietario de la instancia de opciones y debe liberarla
GetODSSheetNames(FileName, AList), GetODSSheetNames(Stream, AList)Reads only ODS table names from content.xml into AList sin restablecer ni poblar el libro. Úselo cuando un selector de archivos o un flujo de importación necesite los nombres de las hojas antes de cargar el libro
SaveAsCSV overloadsCuatro sobrecargas (FileName o Stream × hoja activa predeterminada / SheetIndex explícito + Delimiter). Escribe la hoja elegida como CSV UTF-8 con BOM. Los valores de fecha se representan como yyyy-mm-dd hh:nn:ssSobrecargas de exportación CSV FileName, SheetIndex, UTF-8, CSV, BOM
SaveAsHTML overloadsSobrecargas de exportación HTML TXLSXHtmlExportOptions Sobrecargas de exportación HTML UTF-8, URIs, CSS TitleSaveAsRTF overloads WriteDocument, IncludeStyles, IncludeBOM, and TableClass. Set WriteDocument to False for a table fragment; set IncludeBOM to False al incrustar la salida en una respuesta UTF-8 existente. La salida exportada ahora conserva los hipervínculos de celda como <a> anchors and anchored images as inline data: como URI de imagen; la exportación a nivel de libro incluye anclas fuera de las celdas con contenido. Los comentarios de celda también se emiten como <td>title atributos escapados, y la exportación a nivel de libro incluye anclas de solo comentarios. Cuando IncludeStyles is enabled, explicit ColWidth values are emitted as <col> widths and explicit RowHeight values as <tr> como estilos de alto. Las secciones de texto enriquecido de las celdas se emiten como <span> elementos con estilos en línea de fuente, color, énfasis y subrayado cuando IncludeStyles se habilita. Los bordes de celda se emiten como CSS border-left, border-right, border-top, and border-bottom rules when IncludeStyles se habilita. Las filas y columnas ocultas marcadas mediante RowHidden / ColHidden, además de las columnas de ancho cero explícitas, se omiten en la tabla generada y <colgroup>. Los ajustes de alineación vertical se emiten como CSS vertical-align rules when IncludeStyles Sobrecargas de exportación RTF FileName, SheetIndex, RTF, ASCII
SaveAsRTF overloadsHoja activa XLS, OOXML ColWidth Minimized / WindowHidden / ShowHorizontalScroll / ShowVerticalScroll \uN? Banderas de ventana para minimizar y barras de desplazamiento
ActiveSheetGeometría de la ventana ActiveSheetIndex. SaveAs writes activeTab="N" on <workbookView> (the OOXML activeTab en sí permanece basado en 0) cuando hay que emitir las opciones de vista del libro, y marca la hoja correspondiente con tabSelected="1"
Minimized / WindowHidden / ShowHorizontalScroll / ShowVerticalScrollWorkbook-window chrome flags written to <workbookView>. Minimized writes minimized="1", WindowHidden writes visibility="hidden", and ShowHorizontalScroll / ShowVerticalScroll hide or show the workbook scrollbars. Open Opciones de vista de la ventana del libro AutoFilter
XWindow / YWindow / WindowWidth / WindowHeightBase de fecha del libro <workbookView>. XWindow and YWindow store the window origin, while WindowWidth and WindowHeight almacenan su tamaño. Los valores se limitan al rango 0..65535 y se conservan al cargar
ShowSheetTabs / TabRatio / FirstSheet / AutoFilterDateGroupingWorkbook-window view options written to <workbookView>. ShowSheetTabs hides or shows the sheet-tab bar, TabRatio controla el reparto de ancho entre la barra de pestañas y la barra de desplazamiento y se acota a 0..1000, FirstSheet selecciona la primera pestaña visible como índice de hoja basado en 0 y se acota a una hoja existente, y AutoFilterDateGrouping controla la agrupación de fechas de Excel en los desplegables de AutoFiltro. Open round-trips all four values
Date1904Workbook date base. False (por defecto) = época 1900 de Windows; True = época 1904 de Mac (desplaza todos los números de serie de fecha 1462 días). Establezca esta before assigning TDateTime Base de fecha del libro
Iterate / IterateCount / IterateDeltaControla el cálculo iterativo de referencias circulares. IterateCount se acota a 1..32767 y su valor predeterminado es 100. IterateDelta acepta valores finitos no negativos y su valor predeterminado es 0.001. Los límites no predeterminados persisten incluso cuando Iterate está actualmente en False
CalcMode / RefMode / CalcIdControla el modo de cálculo del libro, el estilo de referencia de fórmulas y la identidad del motor de cálculo. CalcMode acepta auto, manualo autoNoTableRefMode acepta A1 o R1C1 con entrada insensible a mayúsculas y salida canónica La salida de errores enriquecidos modernos usa un CalcId emitido de al menos 191029 para que Excel interprete los errores modernos cacheados, conservando los valores solicitados más altos y dejando la propiedad en memoria sin cambios
FullCalcOnLoad / ForceFullCalc / CalcCompleted / CalcOnSave / FullPrecisionControla el recálculo completo, la finalización del cálculo cacheado, el recálculo antes de guardar y la política de precisión. Cada valor no predeterminado emite y hace round-trip de forma independiente del atributo <calcPr> correspondiente
ConcurrentCalc / ConcurrentManualCountControla el cálculo concurrente del libro y la sugerencia manual de recuento de workers. ConcurrentManualCount se acota a cero o más
SourceFormatInforma de la familia de paquete cargada en la llamada Open o OpenODS exitosa más reciente, devolviendo xlsxOpenXMLWorkbook para libros y plantillas OOXML, incluidos XLTX y XLTM, xlsxOpenDocumentSpreadsheet para ODS y xlsxExcelBinaryWorkbook para el subconjunto de valores y estilos XLSB admitido
Un libro recién creado informa de xlsxOpenXMLWorkbook hasta que se abre un archivo, y esta propiedad no selecciona el formato de salida
IndexedColor[Index]Valor de color indexado ARGB, OOXML, SaveAsXlsxDefaultIndexedPalette) Writing overrides slot N; SaveAs then emits a full <indexedColors> block with all 64 slots
ResolveIndexedColorClassifies public color indexes, BIFF icv Resuelve un color a la entrada más cercana de la paleta indexada BIFF8 sin modificar la paleta
NearestIndexedColorDevuelve la entrada de paleta indexada más cercana a un color sin modificar la paleta
ScanIndexedColorUsageInforma de qué ranuras indexadas usa el libro para planificar conservarlas en una conversión
BuildBiffPalettePlanConstruye un plan de paleta BIFF8 determinista que conserva las ranuras usadas y asigna los colores restantes mediante cuantización ponderada
ApplyBiffPalettePlanAplica un plan de paleta construido, reasignando los colores del libro a las ranuras planificadas
HasCustomIndexedColor / CustomIndexedColorCount / ResetIndexedColorsHasCustomIndexedColor(N) returns True when slot N was explicitly overridden CustomIndexedColorCount devuelve el número de ranuras sobrescritas (0 = sin <colors> block emitted by SaveAs) ResetIndexedColors Colores indexados personalizados SaveAs
ExternalLinksReferencias externas del libro TXLSXExternalLink entry holds a Target URL and a SheetNames list. SaveAs emits the <externalReferences> block in xl/workbook.xml and the corresponding xl/externalLinks/ partes. Open conserva en la ida y vuelta el Target y SheetNames; los valores de celda en caché dentro de <sheetDataSet> Referencias externas del libro URL, SaveAs, SheetNames
CreateWorkspaceWorkbookDevuelve el adaptador revocable IXLSWorkspaceWorkbook para este libro. El adaptador preserva la identidad y generación del origen del libro y se desconecta antes de que el modelo del libro se destruya
ExternalWorkspaceRegistro seguro para hilos que preserva rutas y que consume la evaluación en vivo de fórmulas externas. Se prefieren las identidades exactas y los alias, se rechaza la búsqueda ambigua por nombre base, y la normalización de identidades no realiza acceso implícito a archivos ni a la red. Vea Área de trabajo de libros en vivo
RegisterExternalWorkbook / UnregisterExternalWorkbookFachada de compatibilidad sobre ExternalWorkspace . El registro mapea un nombre suministrado no ambiguo al destino de relación almacenado del libro, mantiene rutas y extensiones distintas y rechaza colisiones. La anulación del registro elimina el registro solicitado; la destrucción del destino también revoca el adaptador de forma segura

Ejemplo

Escritura y reapertura de un libro de trabajo:
uses lxHandleX;

var
  wb: TXLSXWorkbook;
begin
  wb := TXLSXWorkbook.Create;
  try
    wb.Sheets.Add('Demo').Cells.Item[1, 1].Value := 'Hello';
    wb.SaveAs('demo.xlsx');

    wb.Open('demo.xlsx');
    ShowMessage(wb.Sheets[0].Cells.Item[1, 1].Value);
  finally
    wb.Free;
  end;
end;
    

Vease tambien