Freigeben über


Field2.AllowZeroLength-Eigenschaft (DAO)

Gilt für: Access 2013, Office 2013

Sets or returns a value that indicates whether a zero-length string ("") is a valid setting for the Value property of the Field2 object with a Text or Memo data type (Microsoft Access workspaces only).

Syntax

Ausdruck . AllowZeroLength

Ausdruck Eine Variable, die ein Field2-Objekt darstellt.

Hinweise

Bei einem Objekt, das noch nicht der Fields-Auflistung angefügt wurde, besteht für diese Eigenschaft Lese-/Schreibzugriff.

Nachdem die AllowZeroLength-Eigenschaft der Fields-Auflistung hinzugefügt wurde, hängt ihre Verfügbarkeit vom Objekt ab, in dem die Fields-Auflistung enthalten ist (siehe folgende Tabelle).

Zugehörigkeit der Fields-Auflistung

Verfügbarkeit von AllowZeroLength

Index-Objekt

Nicht unterstützt

QueryDef-Objekt

Schreibgeschützt

Recordset-Objekt

Schreibgeschützt

Relation-Objekt

Nicht unterstützt

TableDef-Objekt

Lesen/Schreiben

Sie können diese Eigenschaft zusammen mit der Eigenschaft Required, ValidateOnSet oder ValidationRule verwenden, um einen Wert in einem Feld zu überprüfen.

Beispiel

In diesem Beispiel ermöglicht die AllowZeroLength-Eigenschaft dem Benutzer, den Wert eines Field2-Objekts auf eine leere Zeichenfolge festzulegen. Hierdurch können Benutzer zwischen einem Datensatz unterscheiden, für den keine Daten bekannt sind, und einem Datensatz, für den die Daten nicht angewendet werden können.

    Sub AllowZeroLengthX() 
     
     Dim dbsNorthwind As Database 
     Dim tdfEmployees As TableDef 
     Dim fldTemp As Field 
     Dim rstEmployees As Recordset 
     Dim strMessage As String 
     Dim strInput As String 
     
     Set dbsNorthwind = OpenDatabase("Northwind.mdb") 
     Set tdfEmployees = dbsNorthwind.TableDefs("Employees") 
     ' Create a new Field object and append it to the Fields 
     ' collection of the Employees table. 
     Set fldTemp = tdfEmployees.CreateField("FaxPhone", _ 
     dbText, 24) 
     fldTemp.AllowZeroLength = True 
     tdfEmployees.Fields.Append fldTemp 
     
     Set rstEmployees = _ 
     dbsNorthwind.OpenRecordset("Employees") 
     
     With rstEmployees 
     ' Get user input. 
     .Edit 
     strMessage = "Enter fax number for " & _ 
     !FirstName & " " & !LastName & "." & vbCr & _ 
     "[? - unknown, X - has no fax]" 
     strInput = UCase(InputBox(strMessage)) 
     If strInput <> "" Then 
     Select Case strInput 
     Case "?" 
     !FaxPhone = Null 
     Case "X" 
     !FaxPhone = "" 
     Case Else 
     !FaxPhone = strInput 
     End Select 
     
     .Update 
     
     ' Print report. 
     Debug.Print "Name - Fax number" 
     Debug.Print !FirstName & " " & !LastName & " - "; 
     
     If IsNull(!FaxPhone) Then 
     Debug.Print "[Unknown]" 
     Else 
     If !FaxPhone = "" Then 
     Debug.Print "[Has no fax]" 
     Else 
     Debug.Print !FaxPhone 
     End If 
     End If 
     
     Else 
     .CancelUpdate 
     End If 
     
     .Close 
     End With 
     
     ' Delete new field because this is a demonstration. 
     tdfEmployees.Fields.Delete fldTemp.Name 
     dbsNorthwind.Close 
     
    End Sub