Documentación HotXLS

Clases TXLSXDataValidation y TXLSXDataValidations

TXLSXDataValidations administra las restricciones de entrada de Excel para TXLSXWorksheet.DataValidations, y cada regla es un TXLSXDataValidation

Declaraciones

function Add(const ARange: WideString; AType: TXLSXDataValidationType; AOp: TXLSXDvOperator; const AFormula1: WideString): Integer;
function Add(const ARange: WideString; AType: TXLSXDataValidationType; AOp: TXLSXDvOperator; const AFormula1, AFormula2: WideString): Integer;
function AddList(const ARange, AItems: WideString): Integer;
procedure TXLSXDataValidation.SetPrompt(const ATitle, AText: WideString);
procedure TXLSXDataValidation.SetError(const ATitle, AText: WideString; AStyle: TXLSXDvErrorStyle = xlsxDvErrStop);

Miembros de la regla

Range and ValidationTypeCeldas de destino y tipo de validación de número entero, decimal, lista, fecha, hora, longitud de texto o personalizado
Op, Formula1 and Formula2Operador de comparación y una o dos expresiones de criterio
AllowBlankPermite un valor vacío mientras conserva la regla de validación
PromptTitle and PromptMensaje de entrada mostrado al seleccionar una celda de destino
ErrorTitle, ErrorMessage and ErrorStyleAlerta de entrada no válida y su icono de detención, advertencia o información
ShowDropDownControla si una validación de lista muestra su flecha de selección
ImeModeModo de entrada IME OOXML para clientes CJK compatibles

Rangos de objetivos de reglas

Desde 2.384.76, los objetivos locales de la hoja aceptan celdas individuales, rectángulos de celdas, columnas completas como $B:$D y filas completas como $5:$8; los extremos invertidos se normalizan, y los espacios, tabuladores o saltos de línea separan varias áreas
Las referencias absolutas y mixtas conservan su texto Range original; la coincidencia usa las filas 1 a 1048576 y las columnas A a XFD, omite las áreas mal formadas o fuera de la cuadrícula, y mantiene activas las áreas hermanas válidas sin lanzar una nueva excepción del setter
Las referencias calificadas por hoja y externas no son áreas objetivo; cada regla pertenece a su hoja de cálculo, y los signos de dólar deben aparecer en posiciones ordinarias de referencia A1
La búsqueda de reglas, la eliminación de celdas y rangos, la validación de una sola celda y las auditorías de validación de celdas almacenadas usan la misma geometría de objetivos; el análisis de objetivos no cambia el soporte de fórmulas de origen de lista
Desde 2.384.77, las ediciones de filas y columnas también transforman los objetivos de regla de eje completo dentro de la cuadrícula de la hoja; una extensión que abarca cada fila o columna permanece completa cuando ese eje se edita, mientras que las ediciones del otro eje mueven, encogen o eliminan el objetivo
La clonación de rangos conserva el contrato de cobertura completa: cada área objetivo debe caber dentro del rectángulo de origen antes de copiar la regla, y una intersección parcial por sí sola no copia una regla; los objetivos de eje completo pueden clonarse desde un origen de fila entera o de columna entera cuando el destino permanece dentro de la cuadrícula
Los objetivos de validación de eje completo permanecen como una sola regla durante las ediciones, con la fórmula ajustada desde su primera ancla superviviente; esto no amplía el soporte existente de interoperabilidad ODS para booleanos personalizados o fórmulas escalares

Ejemplo

var Index: Integer;
begin
  Index := Sheet.DataValidations.AddList('D2:D100', 'New,Active,Closed');
  Sheet.DataValidations[Index].SetPrompt('Status', 'Select a permitted status');
  Sheet.DataValidations[Index].SetError('Invalid status', 'Choose a value from the list');
end;

Alcance en ODS

La exportación ODS deriva una dirección base válida de primera celda a partir de la primera área objetivo admitida, incluidas filas y columnas completas; las áreas iniciales mal formadas no se convierten en direcciones base
La exportación de validación booleana personalizada sigue sin estar admitida, y las fórmulas de umbral escalar conservan sus limitaciones existentes de sintaxis de fórmulas; la corrección de rangos objetivo no establece interoperabilidad externa para fórmulas de validación relativas

Véase también