Eingabe Format eines Datenbank-Feldes ändern

  • Access

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von INOPIAE.

    Eingabe Format eines Datenbank-Feldes ändern

    Ich habe das Problem, dass ich per Code ein Feld in einer Access Datenbank erstellen möchte. Das Feld soll ein spezielles Eingabeformat haben.

    Die Erstellung des Feldes mache ich so. Wie komme ich dann das Eingabeformat?

    Visual Basic-Quellcode

    1. Dim db As DAO.Database
    2. Dim fld As DAO.Field
    3. Dim prp As DAO.Property
    4. Dim Tbl As DAO.TableDef
    5. Set db = CurrentDB
    6. Set Tbl = db.TableDefs("Bank")
    7. With Tbl
    8. Set fld = Tbl.CreateField("IBAN", dbText, 36))
    9. .Fields.Append fld
    10. End With


    Das Eingabeformat soll so aussehen:
    >LL00\ 0000\ 0099\ 9999\ 9999\ 9999\ 9999\ 9999\ 9999;0;_
    NB. Es ist doch schön, wenn man lesbare Namen vergibt. Siehe auch [VB.NET] Beispiele für guten und schlechten Code (Stil).
    Boah, ist VBA hässlich. Dank mir später :D
    Wichtig ist, das Feld erst der Tabelle hinzuzufügen und anschließend die Eigenschaft zu setzen.

    Visual Basic-Quellcode

    1. Set currentTable = db.TableDefs("Bank")
    2. Set newField = currentTable.CreateField("IBAN", dbText, 36)
    3. currentTable.Fields.Append newField
    4. currentTable.Fields.Refresh
    5. Dim inputMaskProperty As DAO.Property
    6. Set inputMaskProperty = db.CreateProperty("InputMask", 10, ">LL00\ 0000\ 0099\ 9999\ 9999\ 9999\ 9999\ 9999\ 9999;0;_")
    7. newField.Properties.Append inputMaskProperty