OptionButton.ValidationText property (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 OptionButton-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.

Hinweis

Die Eigenschaften ValidationRule und ValidationText gelten nicht für Kontrollkästchen-, Optionsschaltflächen- oder Umschaltflächensteuerelemente, wenn sie sich in einer Optionsgruppe befinden. Sie gelten nur für die Optionsgruppe selbst.

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.