DataValidation — Aspose.Cells FOSS for Python API Reference
aspose-cells-foss unterstützt das Hinzufügen von Datenvalidierungsregeln zu Zellbereichen. Validierungsregeln werden verwaltet über ws.data_validations, ein DataValidationCollection angehängt an jede Worksheet.
Enumerations: aspose.cells_foss
from aspose.cells_foss import (
DataValidationType, DataValidationOperator,
DataValidationAlertStyle, DataValidationImeMode,
DataValidation, DataValidationCollection,
)DataValidationType
DataValidationType ist ein IntEnum das den Typ der anzuwendenden Einschränkung identifiziert.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
NONE | 0 | Keine Validierungseinschränkung. |
WHOLE_NUMBER | 1 | Akzeptiert nur ganze Zahlen. |
DECIMAL | 2 | Akzeptiert Dezimalzahlen. |
LIST | 3 | Akzeptiert Werte aus einer Dropdown-Liste. |
DATE | 4 | Akzeptiert nur Datumswerte. |
TIME | 5 | Akzeptiert nur Zeitwerte. |
TEXT_LENGTH | 6 | Validiert nach Textlänge. |
CUSTOM | 7 | Validiert mit einer benutzerdefinierten Formel. |
DataValidationOperator
DataValidationOperator ist ein IntEnum gibt den Vergleichsoperator an, der bei numerischen/Datums-/Zeit-/Längenbeschränkungen verwendet wird.
| Enumerations | Enumerations |
|---|---|
BETWEEN | 0 |
NOT_BETWEEN | 1 |
EQUAL | 2 |
NOT_EQUAL | 3 |
GREATER_THAN | 4 |
LESS_THAN | 5 |
GREATER_THAN_OR_EQUAL | 6 |
LESS_THAN_OR_EQUAL | 7 |
DataValidationAlertStyle
DataValidationAlertStyle ist ein IntEnum steuert, wie Excel reagiert, wenn ungültige Daten eingegeben werden.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
STOP | 0 | Verwirft den Eintrag und zeigt einen Fehlermeldungsdialog an (Standard). |
WARNING | 1 | Zeigt eine Warnung an, lässt aber den Eintrag zu. |
INFORMATION | 2 | Zeigt eine Informationsmeldung an, lässt den Eintrag jedoch immer zu. |
DataValidationImeMode
DataValidationImeMode ist ein IntEnum steuert den IME‑Modus (Input Method Editor) für die Eingabe ostasiatischer Texte.
| Enumerations | Enumerations |
|---|---|
NO_CONTROL | 0 |
OFF | 1 |
ON | 2 |
DISABLED | 3 |
HIRAGANA | 4 |
FULL_KATAKANA | 5 |
HALF_KATAKANA | 6 |
FULL_ALPHA | 7 |
HALF_ALPHA | 8 |
FULL_HANGUL | 9 |
HALF_HANGUL | 10 |
DataValidation
A DataValidation Objekt beschreibt eine einzelne Validierungsregel und den Zellbereich (sqref) auf den es angewendet wird.
Enumerations
DataValidation(sqref=None)| Enumerations | Enumerations | Enumerations |
|---|---|---|
sqref | `str | None` |
Enumerations
| Enumerations | Enumerations | Enumerations |
|---|---|---|
sqref | str | Der Zellbereich für diese Regel (z. B., "B2:B100"). |
type | DataValidationType | Validierungstyp (Ganzzahl, Dezimalzahl, Liste, Datum, Uhrzeit, Textlänge oder benutzerdefiniert). |
operator | DataValidationOperator | Vergleichsoperator angewendet auf formula1 (und formula2 für BETWEEN/NOT_BETWEEN). |
formula1 | str | Untergrenze, Quellliste (z. B., '"Apple,Banana,Cherry"'), oder benutzerdefinierte Formel. |
formula2 | str | Obergrenze für BETWEEN und NOT_BETWEEN Operatoren. |
alert_style | DataValidationAlertStyle | Wie Excel auf ungültige Eingaben reagiert (STOP, WARNING, oder INFORMATION). |
show_error_message | bool | True um den Fehlermeldungsdialog bei ungültiger Eingabe anzuzeigen. |
error_title | str | Titel des Fehlermeldungsdialogs (max. 32 Zeichen). |
error_message | str | Text des Fehlermeldungsdialogs (max. 225 Zeichen). |
show_input_message | bool | True um eine Eingabeaufforderungsnachricht anzuzeigen, wenn die Zelle ausgewählt wird. |
input_title | str | Titel der Eingabeaufforderung (max. 32 Zeichen). |
input_message | str | Text der Eingabeaufforderung (max. 255 Zeichen). |
allow_blank | bool | True um leere (leere) Zellen zuzulassen, ohne den Fehler auszulösen. |
show_dropdown | bool | True um einen Dropdown-Pfeil für Listenvalidierungen anzuzeigen. |
ime_mode | DataValidationImeMode | IME-Modus für ostasiatische Texteingabe. |
Enumerations
copy
validation.copy() -> DataValidationGibt eine tiefe Kopie dieser Validierungsregel zurück.
DataValidationCollection
DataValidationCollection wird aufgerufen als ws.data_validations. Sie verwaltet alle Validierungsregeln in einem Arbeitsblatt.
Enumerations
add
ws.data_validations.add(
sqref,
validation_type=None,
operator=None,
formula1=None,
formula2=None
) -> DataValidationErstellt und registriert eine neue Validierungsregel in einem Aufruf. Gibt die erstellte DataValidation Objekt.
add_validation
ws.data_validations.add_validation(validation: DataValidation) -> DataValidationRegistriert ein vorkonfiguriertes DataValidation Objekt. Gibt dasselbe Objekt zurück.
remove
ws.data_validations.remove(validation: DataValidation) -> boolEntfernt eine Validierungsregel anhand einer Referenz. Gibt zurück True wenn die Regel gefunden und entfernt wurde.
remove_at
ws.data_validations.remove_at(index: int)Entfernt die Validierungsregel am angegebenen nullbasierten Index.
remove_by_range
ws.data_validations.remove_by_range(sqref: str) -> intEntfernt alle Validierungen, deren sqref überschneidet den angegebenen Bereich. Gibt die Anzahl der entfernten Regeln zurück.
clear
ws.data_validations.clear()Entfernt alle Validierungsregeln aus dem Arbeitsblatt.
get_validation
ws.data_validations.get_validation(cell_ref: str) -> DataValidation | NoneGibt die Validierungsregel zurück, die für die gegebene Zellenreferenz gilt (z. B., "B5"), oder None wenn keine zutrifft.
Eigenschaften und Iteration
| Enumerations | Enumerations |
|---|---|
count | Anzahl der Validierungsregeln in diesem Arbeitsblatt (schreibgeschützt). |
disable_prompts | bool — Setzen Sie auf True um alle Eingabe‑Nachricht‑Aufforderungen global zu unterdrücken. |
__len__() | Enumerations count. |
__iter__() | Iteriert über alle DataValidation Objekte. |
__getitem__(index) | Gibt zurück DataValidation bei nullbasiert index. |
Enumerations
Dropdown-Listenvalidierung
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")Numerische Bereichsvalidierung
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")