Esta página cubre los miembros públicos de la API XLS clásica que pertenecen a lxHandle, lxDataToXLS y lxGridToXLS
Propiedades de cálculo de IXLSWorkbook
property CalculationMode: LongWord;
property FormulaArrayMemoryLimit: Int64;
property EnableIteration: Boolean;
property MaxIterations: LongWord;
property MaxIterationChange: Double;
property RecalcOnSave: Boolean;
property UseFullPrecision: Boolean;
| CalculationMode |
Controla el modo de cálculo del libro que se almacena con el archivo |
| FormulaArrayMemoryLimit |
Acota la memoria que ocupan las fórmulas matriciales generadas, como MUNIT; el valor por defecto es 64 MiB, y los valores inferiores a un elemento Double se ajustan a ese mínimo |
| EnableIteration |
Habilita el cálculo iterativo para fórmulas circulares |
| MaxIterations |
Número máximo de pasadas Gauss-Seidel por cada componente fuertemente conexo de referencias circulares |
| MaxIterationChange |
Delta numérico máximo aceptado antes de que un componente de referencias circulares deje de iterar |
| RecalcOnSave |
Solicita el recálculo del libro cuando Excel guarda el archivo |
| UseFullPrecision |
Conserva la precisión completa de las fórmulas; al desactivarla, las cachés de fórmulas y de tablas de datos What-If se redondean a su precisión numérica mostrada efectiva antes de que los dependientes las lean |
Validación de entrada de fórmulas
property IXLSWorkbook.FormulaEntryPolicy: TXLSFormulaEntryPolicy;
function TXLSWorksheet.ValidateFormulaEntry(Row, Col: Integer;
const Formula: WideString): TXLSFormulaEntryValidationResult;
El contrato de validación compartido clasifica la entrada vacía, las funciones desconocidas, los nombres desconocidos, los fallos de sintaxis, las coordenadas no válidas y las fórmulas que no pueden representarse en el destino XLS clásico sin cambiar el estado de la hoja de cálculo; consulte
Directiva de validación de entrada de fórmulas
Calibración de renderizado de IXLSWorkbook
property RenderCalibration: TXLSRenderCalibration;
function CaptureRenderCalibration: TXLSRenderCalibration;
procedure ResetRenderCalibration;
function CreateRenderGeometry(ABackend: TXLSRenderGeometryBackend;
ACacheCapacity: Integer = 4096): IXLSRenderGeometry;
La asignación del registro completo valida los seis campos antes de modificar el libro, CaptureRenderCalibration devuelve una instantánea de valor independiente para una sola operación de medición o exportación, y ResetRenderCalibration restaura los valores estándar 1/1/1/1/100/96
Esta configuración de solo ejecución no se serializa en el archivo XLS y no modifica las alturas de fila ni las anchuras de columna de la hoja de cálculo
CreateRenderGeometry copia la calibración actual en un servicio propio de la operación y vincula la identidad de su caché a la generación actual del libro y al backend seleccionado; los cambios posteriores de calibración del libro no pueden alterar un servicio ya existente
El AutoFit de rango y cada llamada a TXLSPaginationModel.Build capturan la calibración del libro una sola vez; AutoFit es el único consumidor que escribe intencionadamente las dimensiones ajustadas, mientras que la paginación preserva cada altura de fila y anchura de columna almacenadas
Propiedades de documento de IXLSWorkbook
property Title: WideString;
property Subject: WideString;
property Author: WideString;
property Keywords: WideString;
property Comments: WideString;
property Company: WideString;
property Manager: WideString;
Estas propiedades leen y escriben los campos de información de resumen del libro guardados con el archivo XLS clásico
Método Close de IXLSWorkbook
function Close: Integer;
Cierra el objeto de libro y libera el contenido propiedad del libro mantenido por el modelo de objetos XLS clásico
property MetadataOnly: Boolean;
property SelectedSheets: TStringList;
property IncompleteLoad: Boolean;
| MetadataOnly |
Cuando se establece antes de Open, lee únicamente los metadatos y descriptores de hoja del libro y omite los datos de celdas |
| SelectedSheets |
Lista de nombres de hojas que se cargarán al abrir el libro; una lista vacía carga todas las hojas |
| IncompleteLoad |
True tras Open cuando se omitieron los datos de celdas porque se usó MetadataOnly o SelectedSheets |
Un libro abierto con MetadataOnly o con una
SelectedSheets no vacía no puede guardarse; Save lanza
un error hasta que el libro se vuelva a abrir sin esas opciones
Estado contraído de TXLSColumnInfo
property TXLSWorksheet._ColumnInfo: TXLSColumnInfoList;
property TXLSColumnInfo.Collapsed: Boolean;
property TXLSRowInfo.Collapsed: Boolean;
property TXLSColumnInfoList.Collapsed[Index: Integer]: Boolean;
Collapsed expone el marcador de esquema de columnas BIFF de forma independiente a Hidden y OutlineLevel. El índice de la lista es un índice de columna XLS clásico basado en cero. Las columnas ausentes se leen como False, y asignar False a una columna ausente no asigna metadatos. Las copias de formato de columna, las copias de hojas de cálculo y los ciclos de guardado y reapertura preservan el marcador
Los descriptores de acceso al almacenamiento subyacente son públicos para permitir la inspección de libros a bajo nivel. TXLSRowInfo informa de MinCol y MaxCol (el intervalo de columnas cubierto, basado en uno), de CustomHeight y CustomFormat (si hay una altura explícita o un índice XF almacenados) y de XFIndexSet; TXLSColumnInfo.isEqual compara dos entradas de metadatos de columna campo a campo
TXLSColumnInfoList expone ColCount, MinCol, MaxCol, StdWidth y MaxOutlineLevel para diagnósticos de límites y de anchura por defecto, CalcMaxOutLineLevel recalcula el nivel máximo de esquema cacheado tras editar los metadatos directamente, CopyColFormat clona una entrada de columna sobre otro índice, DeleteCol elimina una entrada, y FindNextColToStore recorre las entradas almacenadas para los escritores de registros COLINFO de BIFF, informando del siguiente intervalo en los parámetros de salida MinCol / MaxCol
Métodos de nodos de esquema de TXLSWorksheet
function TryGetOutlineNode(AAxis: TXLSOutlineAxis; ANodeIndex: Integer; out ANode: TXLSOutlineNode): Boolean;
function SetOutlineNodeCollapsed(AAxis: TXLSOutlineAxis; ANodeIndex: Integer; ACollapsed: Boolean; AChildMode: TXLSOutlineChildMode = xocPreserve): Boolean;
procedure SetOutlineDisplayLevel(AAxis: TXLSOutlineAxis; ADisplayLevel: Integer; AChildMode: TXLSOutlineChildMode = xocPreserve);
Estos métodos adaptan los metadatos clásicos de filas y columnas al modelo de esquema disperso compartido, derivan el nodo de resumen solicitado a partir de su dirección de esquema y aplican cambios comprimidos de ocultación y contracción sin sondear coordenadas no usadas de la hoja de cálculo
ANodeIndex es la fila o columna física de resumen basada en uno, ADisplayLevel sigue la convención de botones de esquema basada en uno, y xocPreserve mantiene de forma predeterminada los marcadores de contracción de los nodos hijos anidados como independientes
Métodos de panel y título de impresión de TXLSWorksheet
function ThawPanes(Y, X: Single; RowTop, ColLeft: Word): Integer;
function SplitPanes(Width, Height: Single): Integer;
function UnsplitPanes: Integer;
function GetSelectedAreas(APane: TXLSPanePosition; out ActiveAreaIndex: Integer): TXLSSelectedAreas;
function SelectAreas(APane: TXLSPanePosition; const Areas: array of WideString; ActiveAreaIndex: Integer = 0): Boolean;
function TryGetWindowScroll(APane: TXLSPanePosition; out ARow, ACol: Integer): Boolean;
function ScrollWindow(APane: TXLSPanePosition; ARow, ACol: Integer): Boolean;
function RepeatRows(FirstRow, LastRow: Word): Integer;
function RepeatColumns(FirstCol, LastCol: Word): Integer;
ThawPanes, SplitPanes y UnsplitPanes controlan el estado de panel dividido, mientras que RepeatRows y RepeatColumns establecen las filas o columnas de título de impresión de la hoja de cálculo
Los registros de selección BIFF consecutivos de un mismo panel forman un único grupo lógico, los grupos editados se escriben en bloques de 1369 áreas como máximo, y las copias de hojas de cálculo conservan todos los grupos de paneles
Las ediciones estructurales de filas y columnas completas remapean todos los grupos de paneles válidos preservando el orden de los supervivientes y la identidad del área activa, con fallbacks deterministas para el sucesor, el predecesor y la celda de límite
Los registros de selección mal formados o contradictorios permanecen opacos, se reproducen byte a byte al guardar y reportan xlsDiagnosticSelectionRecordInvalid en lugar de exponer un estado tipado parcialmente fiable
TryGetWindowScroll y ScrollWindow exponen el contrato compartido de desplazamiento de cuatro paneles basado en uno, mapeando los ejes superior e izquierdo a Window2 y los ejes inferior y derecho a Pane
Métodos de validación de datos con tipo de TXLSWorksheet
function AddWholeNumberValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddDecimalValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddDateValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddTimeValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddTextLengthValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddCustomValidation(ARange: WideString; const AFormula: WideString): TDataValidation;
Cada auxiliar crea una regla de validación de datos con tipo para ARange y devuelve la instancia TDataValidation creada para que se puedan ajustar las opciones de aviso, error y manejo de valores en blanco
Miembros de tabla dinámica de TXLSWorksheet
property PivotTables: TXLSPivotTables;
function AddPivotTable(const SourceRangeA1: WideString; DestRow, DestCol: Integer; const Name: WideString): TXLSPivotTable;
function PivotSetDataFieldFormat(DataField: TXLSPivotDataField; const FormatStr: WideString): Word;
Use
AddPivotTable para crear una tabla dinámica con tipo a partir de un rango de origen; a continuación, use
PivotTables y
PivotSetDataFieldFormat para inspeccionar o dar formato al modelo generado. Consulte
API de tabla dinámica XLS clásica
function SetArrayFormula(const Formula: WideString): Integer;
function XFIndex: Integer;
property FirstRow: Word;
property LastRow: Word;
property FirstCol: Byte;
property LastCol: Byte;
SetArrayFormula asigna una fórmula matricial al rango. FirstRow, LastRow, FirstCol y LastCol exponen los límites del rango almacenado de base 1, mientras que XFIndex devuelve el índice de formato XLS clásico efectivo del rango
Auxiliares de transferencia de IXLSRange
procedure PasteFrom(SrcRange: TXLSRange; PasteMode: LongWord; CopyMode: Boolean);
procedure ShiftTo(Row: Word; Col: Byte);
procedure ExtendRange;
procedure ContractRange;
PasteFrom aplica el contenido de celdas de otro rango XLS clásico mediante el modo de pegado seleccionado. ShiftTo reposiciona un objeto de rango, mientras que ExtendRange y ContractRange ajustan el rectángulo almacenado antes de las operaciones de rango que necesitan límites ampliados o normalizados
Interfaces de rango de filas y columnas IXLS
interface IXLSRowsRange = interface(IXLSRange)
property Item[Row: Integer]: IXLSRowRange;
property Hidden: OleVariant;
property Count: LongWord;
procedure AutoFit(Columns: Boolean = False);
interface IXLSRowRange = interface(IXLSRange)
property Item[Col: Integer]: IXLSColRange;
property Hidden: OleVariant;
property Count: LongWord;
procedure AutoFit(Columns: Boolean = False);
interface IXLSColsRange = interface(IXLSRange)
property Item[Col: Integer]: IXLSColRange;
property Hidden: OleVariant;
property Count: LongWord;
procedure AutoFit(Columns: Boolean = True);
procedure Group(Rows: Boolean = False);
procedure UnGroup(Rows: Boolean = False);
property OutlineLevel: Integer;
interface IXLSColRange = interface(IXLSRange)
property Item[Row: Integer]: IXLSRowRange;
property Hidden: OleVariant;
property Count: LongWord;
procedure AutoFit(Columns: Boolean = True);
procedure Group(Rows: Boolean = False);
procedure UnGroup(Rows: Boolean = False);
property OutlineLevel: Integer;
IXLSRowsRange, IXLSRowRange, IXLSColsRange e IXLSColRange son devueltos por IXLSRange.Rows, IXLSRange.Columns, IXLSRange.EntireRow e IXLSRange.EntireColumn. Mantienen la superficie de edición normal de IXLSRange al tiempo que añaden acceso a filas o columnas indexadas, control del estado oculto, recuentos, autoajuste y agrupación de esquemas cuando la dirección del rango lo admite
Propiedad DisplayText de IXLSHyperLink
property DisplayText: WideString;
DisplayText lee o cambia el texto visible que Excel muestra para un hipervínculo XLS clásico, de forma independiente a la dirección de destino y la información en pantalla
Propiedades de asignación de ID de TXLSWorksheets
property IndexByID[SheetID: Integer]: Integer;
property IDByName[SheetName: WideString]: Integer;
property NameByID[SheetID: Integer]: WideString;
Estas propiedades de solo lectura asignan entre el ID interno de hoja, el índice de hoja de cálculo actual y el nombre visible de la hoja de cálculo. Son útiles para preservar fórmulas, nombres definidos o registros que hacen referencia a hojas mediante identificadores almacenados en lugar del orden de pestañas actual
Propiedad SheetTypeRaw de TXLSWorksheet
property SheetTypeRaw: Byte;
SheetTypeRaw preserva el valor bruto de BoundSheet8.dt del XLS clásico durante la carga y el guardado de libros, de modo que los registros de tipo de hoja de macro, VBA, hoja de cálculo, diálogo y otros pueden hacer Roundtrip sin ser aplanados a una pestaña de hoja de cálculo estándar
Propiedades avanzadas de impresión de IXLSPageSetup
property PrintNotesAtEnd: Boolean;
property UseFirstPageNumber: Boolean;
property FirstPageNumber: Integer;
property PrintCellErrors: LongWord;
property PrintResolution: LongWord;
property PrintVResolution: LongWord;
property Copies: LongWord;
property HasSetupRecord: Boolean; read only
property PrinterSettingsInitialized: Boolean; read only
property PrinterDriverData: TBytes;
property HasPrinterDriverData: Boolean; read only
procedure ClearPrinterDriverData;
Estas propiedades preservan opciones avanzadas de configuración de página, como comentarios impresos al final, un número de primera página personalizado, representación de errores de celda impresos, resolución de impresora y número de copias
HasSetupRecord informa de si una hoja de cálculo XLS clásica cargada contiene un registro Setup de BIFF, mientras que PrinterSettingsInitialized informa de si el tamaño de papel, la escala, la orientación, la resolución y el número de copias están definidos por ese registro
Al guardar una hoja de cálculo sin modificar se preserva tanto la ausencia de un registro Setup como un registro existente byte a byte; cambiar un campo de configuración de página crea el registro cuando es necesario, y cambiar un campo dependiente de la impresora inicializa los ajustes de impresora
PrinterDriverData lee o reemplaza el payload opaco del controlador de impresora BIFF PLS, HasPrinterDriverData distingue un payload ausente, y ClearPrinterDriverData lo elimina sin cambiar los campos tipados de configuración de página
Los arrays de bytes de los getters y setters se copian para que los llamadores y las copias de hojas de cálculo tengan una propiedad independiente; los payloads Classic deben incluir el prefijo reservado obligatorio de dos bytes y no pueden superar 1 MiB
SaveXLSWorkbookAsXLSX traslada de forma independiente los valores tipados de configuración de página y el payload opaco del controlador de impresora al modelo XLSX; los campos estándar tipados siguen siendo la referencia autoritaria cuando los bytes privados del controlador contienen valores por defecto de impresora duplicados
Propiedades de conjunto de caracteres de IXLSFont
property CharSet: Byte;
property Family: Byte;
CharSet y Family exponen los bytes de conjunto de caracteres y familia de fuente del XLS clásico para los llamadores que necesitan preservar metadatos de fuente específicos de configuración regional
Métodos Abort de TDataToXLS y TGridToXLS
procedure TDataToXLS.Abort;
procedure TGridToXLS.Abort;
Llame a Abort desde controladores de eventos de exportación cuando una exportación de conjunto de datos o cuadrícula en ejecución deba detenerse antes de completarse
Funciones auxiliares de referencia XLS clásica
function GetCellRef(Cell: String; var Row, Col: Word): Integer;
function GetCellRange(CellRange: String; var StartRow, StartCol, EndRow, EndCol: Word): Integer;
function EncodeCellRef(Row, Col: Word): String;
function EncodeCellRange(StartRow, StartCol, EndRow, EndCol: Word): String;
function Width2Excel(Value: Single): Word;
function Excel2Width(Value: Word): Single;
function Height2Excel(Value: Single): Word;
function Excel2Height(Value: Word): Single;
function ColIndexToColName(Index: Integer): String;
function ColNameToColIndex(Name: String): Integer;
Estos auxiliares convierten referencias A1 clásicas, rangos, etiquetas de columna, dimensiones de fila o columna y unidades de almacenamiento de Excel usadas por el modelo de objetos XLS clásico