DataValidation

DataValidation — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss suporta a adição de regras de validação de dados a intervalos de células. As regras de validação são gerenciadas através de ws.data_validations, um DataValidationCollection anexado a cada Worksheet.

Example: aspose.cells_foss

from aspose.cells_foss import (
    DataValidationType, DataValidationOperator,
    DataValidationAlertStyle, DataValidationImeMode,
    DataValidation, DataValidationCollection,
)

DataValidationType

DataValidationType é um IntEnum identificando o tipo de restrição a ser aplicada.

ExampleExampleExample
NONE0Sem restrição de validação.
WHOLE_NUMBER1Aceita apenas números inteiros.
DECIMAL2Aceita números decimais.
LIST3Aceita valores de uma lista suspensa.
DATE4Aceita apenas valores de data.
TIME5Aceita apenas valores de hora.
TEXT_LENGTH6Valida por comprimento de texto.
CUSTOM7Valida usando uma fórmula personalizada.

DataValidationOperator

DataValidationOperator é um IntEnum especificando o operador de comparação usado com restrições numéricas/data/hora/comprimento.

ExampleExample
BETWEEN0
NOT_BETWEEN1
EQUAL2
NOT_EQUAL3
GREATER_THAN4
LESS_THAN5
GREATER_THAN_OR_EQUAL6
LESS_THAN_OR_EQUAL7

DataValidationAlertStyle

DataValidationAlertStyle é um IntEnum controlando como o Excel reage quando dados inválidos são inseridos.

ExampleExampleExample
STOP0Rejeita a entrada e exibe uma caixa de diálogo de erro (padrão).
WARNING1Exibe um aviso, mas permite a entrada.
INFORMATION2Exibe uma mensagem informativa, mas sempre permite a entrada.

DataValidationImeMode

DataValidationImeMode é um IntEnum controlando o modo IME (Editor de Métodos de Entrada) para inserção de texto em línguas do Leste Asiático.

ExampleExample
NO_CONTROL0
OFF1
ON2
DISABLED3
HIRAGANA4
FULL_KATAKANA5
HALF_KATAKANA6
FULL_ALPHA7
HALF_ALPHA8
FULL_HANGUL9
HALF_HANGUL10

DataValidation

A DataValidation objeto descreve uma única regra de validação e o intervalo de células (sqref) a que se aplica.

Example

DataValidation(sqref=None)
ExampleExampleExample
sqref`strNone`

Example

ExampleExampleExample
sqrefstrO intervalo de células para esta regra (por exemplo,., "B2:B100").
typeDataValidationTypeTipo de validação (número inteiro, decimal, lista, data, hora, comprimento de texto ou personalizado).
operatorDataValidationOperatorOperador de comparação aplicado a formula1 (e formula2 para BETWEEN/NOT_BETWEEN).
formula1strLimite inferior, origem da lista (por exemplo,., '"Apple,Banana,Cherry"').
formula2strLimite superior para BETWEEN e NOT_BETWEEN operadores.
alert_styleDataValidationAlertStyleComo o Excel responde a entrada inválida (STOP, WARNING, ou INFORMATION).
show_error_messageboolTrue para exibir a caixa de diálogo de mensagem de erro em entrada inválida.
error_titlestrTítulo da caixa de diálogo de erro (máx. 32 caracteres).
error_messagestrCorpo da caixa de diálogo de erro (máx. 225 caracteres).
show_input_messageboolTrue para exibir uma mensagem de prompt de entrada quando a célula for selecionada.
input_titlestrTítulo do prompt de entrada (máx 32 caracteres).
input_messagestrCorpo do prompt de entrada (máx 255 caracteres).
allow_blankboolTrue para permitir células em branco (vazias) sem disparar o erro.
show_dropdownboolTrue para exibir uma seta de lista suspensa nas validações de lista.
ime_modeDataValidationImeModeModo IME para entrada de texto em línguas do Leste Asiático.

Example

copy

validation.copy() -> DataValidation

Retorna uma cópia profunda desta regra de validação.


DataValidationCollection

DataValidationCollection é acessado como ws.data_validations. Ele gerencia todas as regras de validação em uma planilha.

Example

add

ws.data_validations.add(
    sqref,
    validation_type=None,
    operator=None,
    formula1=None,
    formula2=None
) -> DataValidation

Cria e registra uma nova regra de validação em uma única chamada. Retorna a regra criada DataValidation objeto.

add_validation

ws.data_validations.add_validation(validation: DataValidation) -> DataValidation

Registra um pré-configurado DataValidation objeto. Retorna o mesmo objeto.

remove

ws.data_validations.remove(validation: DataValidation) -> bool

Remove uma regra de validação por referência. Retorna True se a regra foi encontrada e removida.

remove_at

ws.data_validations.remove_at(index: int)

Remove a regra de validação no índice baseado em zero fornecido.

remove_by_range

ws.data_validations.remove_by_range(sqref: str) -> int

Remove todas as validações cujo sqref sobrepõe o intervalo fornecido. Retorna o número de regras removidas.

clear

ws.data_validations.clear()

Remove todas as regras de validação da planilha.

get_validation

ws.data_validations.get_validation(cell_ref: str) -> DataValidation | None

Retorna a regra de validação que se aplica à referência de célula fornecida (por exemplo,., "B5"), ou None se nenhuma se aplicar.

Propriedades e iteração

ExampleExample
countNúmero de regras de validação nesta planilha (somente leitura).
disable_promptsbool — Defina como True para suprimir todas as mensagens de entrada globalmente.
__len__()Example count.
__iter__()Itera sobre todos os DataValidation objetos.
__getitem__(index)Retorna o DataValidation em base zero index.

Example

Validação de Lista Suspensa

from aspose.cells_foss import Workbook, DataValidationType, DataValidationAlertStyle

wb = Workbook()
ws = wb.worksheets[0]

# Write a label
ws.cells["A1"].put_value("Status")

# Add a dropdown list to A2:A20
dv = ws.data_validations.add(
    sqref="A2:A20",
    validation_type=DataValidationType.LIST,
    formula1='"Open,In Progress,Closed,Cancelled"',
)
dv.show_dropdown = True
dv.allow_blank = True
dv.alert_style = DataValidationAlertStyle.STOP
dv.show_error_message = True
dv.error_title = "Invalid Status"
dv.error_message = "Please select a value from the list."
dv.show_input_message = True
dv.input_title = "Status"
dv.input_message = "Choose a status from the dropdown."

wb.save("dropdown_validation.xlsx")

Validação de Intervalo Numérico

from aspose.cells_foss import (
    Workbook, DataValidationType, DataValidationOperator,
    DataValidationAlertStyle,
)

wb = Workbook()
ws = wb.worksheets[0]

ws.cells["B1"].put_value("Score (0–100)")

# Whole number between 0 and 100
dv = ws.data_validations.add(
    sqref="B2:B50",
    validation_type=DataValidationType.WHOLE_NUMBER,
    operator=DataValidationOperator.BETWEEN,
    formula1="0",
    formula2="100",
)
dv.allow_blank = False
dv.alert_style = DataValidationAlertStyle.WARNING
dv.show_error_message = True
dv.error_title = "Out of Range"
dv.error_message = "Score must be between 0 and 100."

wb.save("range_validation.xlsx")

Veja Também

 Português