DataValidation — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss podržava dodavanje pravila provjere podataka na raspon ćelija. Pravila provjere podataka upravljaju se putem ws.data_validations, a DataValidationCollection priloženo svakom Worksheet.

: aspose.cells_foss

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

DataValidationType

DataValidationType je IntEnum koji identificira vrstu ograničenja koje se primjenjuje.

NONE0Nema ograničenja provjere.
WHOLE_NUMBER1Prihvaća samo cijele brojeve.
DECIMAL2Prihvaća decimalne brojeve.
LIST3Prihvaća vrijednosti iz padajućeg popisa.
DATE4Prihvaća samo datumske vrijednosti.
TIME5Prihvaća samo vremenske vrijednosti.
TEXT_LENGTH6Provjerava po duljini teksta.
CUSTOM7Provjerava pomoću prilagođene formule.

DataValidationOperator

DataValidationOperator je IntEnum koji specificira operator usporedbe koji se koristi s numeričkim/datumski/vremenskim/duljinskim ograničenjima.

BETWEEN0
NOT_BETWEEN1
EQUAL2
NOT_EQUAL3
GREATER_THAN4
LESS_THAN5
GREATER_THAN_OR_EQUAL6
LESS_THAN_OR_EQUAL7

DataValidationAlertStyle

DataValidationAlertStyle je IntEnum kontroliranje kako Excel reagira kada se unesu neispravni podaci.

STOP0Odbija unos i prikazuje dijalog pogreške (zadano).
WARNING1Prikazuje upozorenje, ali dopušta unos.
INFORMATION2Prikazuje informativnu poruku, ali uvijek dopušta unos.

DataValidationImeMode

DataValidationImeMode je IntEnum kontrolira IME (Input Method Editor) način za unos istočnoazijskog teksta.

NO_CONTROL0
OFF1
ON2
DISABLED3
HIRAGANA4
FULL_KATAKANA5
HALF_KATAKANA6
FULL_ALPHA7
HALF_ALPHA8
FULL_HANGUL9
HALF_HANGUL10

DataValidation

Jedan DataValidation objekt opisuje jedno pravilo provjere i raspon ćelija (sqref) na koji se primjenjuje.

DataValidation(sqref=None)
sqref`strNone`

sqrefstrRaspon ćelija za ovo pravilo (npr., "B2:B100").
typeDataValidationTypeVrsta provjere (cijeli broj, decimalni, popis, datum, vrijeme, duljina teksta ili prilagođeno).
operatorDataValidationOperatorOperator usporedbe primijenjen na formula1 (i formula2 za BETWEEN/NOT_BETWEEN).
formula1strDonja granica, izvor popisa (npr., '"Apple,Banana,Cherry"'), ili prilagođena formula.
formula2strGornja granica za BETWEEN i NOT_BETWEEN operatori.
alert_styleDataValidationAlertStyleKako Excel reagira na neispravan unos (STOP, WARNING, ili INFORMATION).
show_error_messageboolTrue za prikaz dijaloga s porukom o pogrešci pri neispravnom unosu.
error_titlestrNaslov dijaloga o pogrešci (najviše 32 znaka).
error_messagestrTekst dijaloga o pogrešci (najviše 225 znakova).
show_input_messageboolTrue za prikaz poruke upita unosa kada je ćelija odabrana.
input_titlestrNaslov upita unosa (najviše 32 znaka).
input_messagestrTekst upita unosa (najviše 255 znakova).
allow_blankboolTrue za dopuštanje praznih (praznih) ćelija bez pokretanja pogreške.
show_dropdownboolTrue za prikaz strelice padajućeg izbornika za provjere popisa.
ime_modeDataValidationImeModeIME način za unos teksta istočnoazijskog podrijetla.

copy

validation.copy() -> DataValidation

Vraća duboku kopiju ovog pravila provjere.


DataValidationCollection

DataValidationCollection se pristupa kao ws.data_validations. Upravljа svim pravilima provjere na radnom listu.

add

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

Stvara i registrira novo pravilo provjere u jednom pozivu. Vraća stvoreni DataValidation objekt.

add_validation

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

Registrira unaprijed konfigurirani DataValidation objekt. Vraća isti objekt.

ukloni

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

Uklanja pravilo provjere po referenci. Vraća True ako je pravilo pronađeno i uklonjeno.

remove_at

ws.data_validations.remove_at(index: int)

Uklanja pravilo provjere na zadanom indeksu koji počinje od nule.

remove_by_range

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

Uklanja sve provjere čiji sqref preklapa se s danim rasponom. Vraća broj uklonjenih pravila.

očisti

ws.data_validations.clear()

Uklanja sva pravila provjere iz radnog lista.

get_validation

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

Vraća pravilo provjere koje se primjenjuje na zadanu referencu ćelije (npr.,)., "B5"), ili None ako nijedan ne vrijedi.

Svojstva i iteracija

countBroj pravila validacije na ovom radnom listu (samo za čitanje).
disable_promptsbool — Postavi na True za globalno suzbijanje svih input-message prompts.
__len__()
count.
__iter__()Prolazi kroz sve DataValidation objects.
__getitem__(index)Vraća DataValidation na nultom indeksu index.

Provjera padajućeg popisa

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")

Provjera numeričkog raspona

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")

Vidi također

 Hrvatski