ListBox.ValidationText-Eigenschaft (Access)
Mit der ValidationText-Eigenschaft können Sie festlegen, dass Benutzer in einer Meldung informiert werden, wenn Daten eingegeben werden, die gegen eine ValidationRule-Einstellung für einen Datensatz, ein Feld oder ein Steuerelement verstoßen. String-Wert mit Lese-/Schreibzugriff.
Syntax
Ausdruck. ValidationText
Ausdruck Eine Variable, die ein ListBox-Objekt darstellt.
HinwBemerkungeneise
Geben Sie einen Ausdruck für die ValidationRule-Eigenschaft und Text für die ValidationText-Eigenschaft ein. Die maximale Länge für die ValidationRule-Eigenschaft beträgt 2048 Zeichen. Die maximale Länge für die ValidationText -Eigenschaft beträgt 255 Zeichen.
Für Steuerelemente können Sie die ValidationRule-Eigenschaft auf jeden gültigen Ausdruck festlegen. Für Feld- und Datensatzvalidierungsregeln darf der Ausdruck keine benutzerdefinierten Funktionen, Domänenaggregat- oder Aggregatfunktionen, die Eval-Funktion , die CurrentUser-Methode oder Verweise auf Formulare, Abfragen oder Tabellen enthalten. Darüber hinaus dürfen Gültigkeitsprüfungsregeln für Felder keine Verweise auf andere Felder enthalten. Bei Datensätzen können Ausdrücke Verweise auf Felder in der Tabelle enthalten.
Für Tabellenfelder und Datensätze können Sie diese Eigenschaften auch in Visual Basic mithilfe der DAO-Eigenschaft ValidationRule festlegen.
Microsoft Access überprüft Werte automatisch basierend auf dem Datentyp eines Felds. Beispielsweise lässt Access keinen Text in einem numerischen Feld zu. Sie können spezifischere Regeln festlegen, indem Sie die ValidationRule-Eigenschaft verwenden.
Wenn Sie die ValidationRule-Eigenschaft festlegen, aber nicht die ValidationText-Eigenschaft , zeigt Access eine Standardfehlermeldung an, wenn die Validierungsregel verletzt wird. Wenn Sie die ValidationText-Eigenschaft festlegen, wird der eingegebene Text als Fehlermeldung angezeigt.
Wenn beispielsweise ein Datensatz für einen neuen Mitarbeiter hinzugefügt wird, können Sie eine ValidationRule-Eigenschaft eingeben, die erfordert, dass der Wert im Feld StartDate des Mitarbeiters zwischen dem Gründungsdatum des Unternehmens und dem aktuellen Datum liegt. Wenn das eingegebene Datum nicht in diesem Bereich liegt, können Sie entsprechend der ValidationText -Eigenschaft die Meldung anzeigen: "Startdatum ist falsch".
Wenn Sie ein Steuerelement erstellen, indem Sie ein Feld aus der Feldliste ziehen, bleibt die Validierungsregel des Felds wirksam, obwohl sie nicht im ValidationRule-Eigenschaftenfeld des Steuerelements auf dem Eigenschaftenblatt angezeigt wird. Der Grund ist, dass eine Feld-Gültigkeitsprüfungsregel von einem an das Feld gebundenen Steuerelement geerbt wird.
Gültigkeitsprüfungsregeln für Steuerelemente, Felder und Datensätze werden wie folgt angewendet:
Validierungsregeln, die Sie für Felder und Steuerelemente festlegen, werden angewendet, wenn Sie die Daten bearbeiten und der Fokus das Feld oder Steuerelement verlässt.
Gültigkeitsprüfungsregeln für Datensätze werden angewendet, wenn Sie zu einem anderen Datensatz wechseln.
Bei der Erstellung von Gültigkeitsprüfungsregeln für ein Feld und ein an das Feld gebundenes Steuerelement werden beide Gültigkeitsprüfungsregeln angewendet, wenn Sie Daten bearbeiten und das Steuerelement den Fokus verliert.
Die folgende Tabelle enthält Ausdrucksbeispiele für die Eigenschaften ValidationRule und ValidationText.
ValidationRule-Eigenschaft | ValidationText-Eigenschaft |
---|---|
<> 0 |
Der Eintrag muss ein Wert ungleich Null sein. |
> 1000 Or Is Null |
Der Eintrag muss leer oder größer als 1000 sein. |
Like "A????" |
Der Eintrag muss 5 Zeichen lang sein und mit dem Buchstaben A beginnen. |
>= #1/1/96# And <#1/1/97# |
Der Eintrag muss ein Datum in 1996 sein. |
DLookup("CustomerID", "Customers", "CustomerID = Forms!Customers!CustomerID") Is Null |
Der Eintrag muss eine eindeutige Kunden-Nr. sein (Domänenaggregatfunktionen sind nur für die Überprüfung auf Formularebene zulässig). |
Wenn Sie eine Validierungsregel für ein Feld erstellen, lässt Access normalerweise nicht zu, dass ein Null-Wert im Feld gespeichert wird. Wenn Sie einen Null-Wert zulassen möchten, fügen Sie "Is Null"
der Validierungsregel wie in "<> 8 Or Is Null"
hinzu, und stellen Sie sicher, dass die Required-Eigenschaft auf Nein festgelegt ist.
Sie können keine Feld- oder Datensatzüberprüfungsregeln für Tabellen festlegen, die außerhalb von Access erstellt wurden (z. B. dBASE, Paradox oder SQL Server). Bei derartigen Tabellen können Sie Gültigkeitsprüfungsregeln nur für Steuerelemente erstellen.
Beispiel
Das folgende Beispiel erstellt eine Gültigkeitsprüfungsregel für ein Feld, in das nur Werte über 65 eingegeben werden können. Wenn eine Zahl kleiner als 65 eingegeben wurde, wird eine Meldung angezeigt. Die Eigenschaften werden mithilfe der SetFieldValidation-Funktion festgelegt.
Dim strTblName As String, strFldName As String
Dim strValidRule As String
Dim strValidText As String, intX As Integer
strTblName = "Customers"
strFldName = "Age"
strValidRule = ">= 65"
strValidText = "Enter a number greater than or equal to 65."
intX = SetFieldValidation(strTblName, strFldName, _
strValidRule, strValidText)
Function SetFieldValidation(strTblName As String, _
strFldName As String, strValidRule As String, _
strValidText As String) As Integer
Dim dbs As Database, tdf As TableDef, fld As Field
Set dbs = CurrentDb
Set tdf = dbs.TableDefs(strTblName)
Set fld = tdf.Fields(strFldName)
fld.ValidationRule = strValidRule
fld.ValidationText = strValidText
End Function
Im folgenden Beispiel wird die SetTableValidation-Funktion verwendet, um die Überprüfung auf Datensatzebene festzulegen, um sicherzustellen, dass der Wert im Feld EndDate hinter dem Wert im Feld StartDate liegt.
Dim strTblName As String, strValidRule As String
Dim strValidText As String
Dim intX As Integer
strTblName = "Employees"
strValidRule = "EndDate > StartDate"
strValidText = "Enter an EndDate that is later than the StartDate."
intX = SetTableValidation(strTblName, strValidRule, strValidText)
Function SetTableValidation(strTblName As String, _
strValidRule As String, strValidText As String) _
As Integer
Dim dbs As Database, tdf As TableDef
Set dbs = CurrentDb
Set tdf = dbs.TableDefs(strTblName)
tdf.ValidationRule = strValidRule
tdf.ValidationText = strValidText
End Function
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für