Wie ermittelt man in Access VBA, mit welchen Datentypen ein Feld gefüllt ist?

Antwort

Um in Microsoft Access mit VBA zu ermitteln, mit welchen Datentypen ein Feld in einer Tabelle gefüllt ist, gibt es zwei Ansätze: **1. Datentyp des Feldes in der Tabellendefinition abfragen:** Hiermit erfährst du, welcher Datentyp für das Feld in der Tabelle festgelegt ist (z.B. Text, Zahl, Datum): ```vba Dim db As DAO.Database Dim tdf As DAO.TableDef Dim fld As DAO.Field Set db = CurrentDb Set tdf = db.TableDefs("DeineTabelle") Set fld = tdf.Fields("DeinFeld") MsgBox "Datentyp: " & fld.Type ``` Die Rückgabe ist eine Zahl, die dem Access-Datentyp entspricht (z.B. 10 = Text, 3 = Zahl). Eine Übersicht findest du [hier](https://learn.microsoft.com/de-de/office/client-developer/access/desktop-database-reference/field-type-property-dao). --- **2. Tatsächlich gespeicherte Werte analysieren:** Wenn du wissen möchtest, welche Typen tatsächlich in den Datensätzen stehen (z.B. ob in einem Textfeld manchmal Zahlen, manchmal Text stehen), kannst du die Werte durchgehen und mit `VarType` prüfen: ```vba Dim rs As DAO.Recordset Dim typ As Integer Set rs = CurrentDb.OpenRecordset("SELECT DeinFeld FROM DeineTabelle") Do While Not rs.EOF typ = VarType(rs!DeinFeld) Debug.Print "Wert: " & rs!DeinFeld & " - Typ: " & typ rs.MoveNext Loop rs.Close Set rs = Nothing ``` Die Rückgabe von `VarType` findest du [hier](https://learn.microsoft.com/de-de/office/vba/language/reference/user-interface-help/vartype-function). --- **Fazit:** - Der Tabellendatentyp gibt an, was gespeichert werden kann. - Mit `VarType` kannst du prüfen, was tatsächlich gespeichert wurde. Beachte, dass Access-Felder immer nur einen Datentyp laut Definition haben, aber z.B. in Textfeldern können beliebige Inhalte stehen.

Kategorie: Datenbanken Tags: Access VBA Datentyp
KI fragen

Verwandte Fragen

Access VBA: Wie erkennt man, ob ein anderer Benutzer eine Tabelle aktualisiert?

In Microsoft Access gibt es keine eingebaute, einfache Möglichkeit, direkt per VBA zu erkennen, ob ein anderer Benutzer gerade eine bestimmte Tabelle aktualisiert oder bearbeitet. Access ist eine... [mehr]

Microsoft Access: VBA DELETE FROM mit mehreren Attributen?

In Microsoft Access VBA kannst du eine `DELETE`-Anweisung verwenden, um Datensätze aus einer Tabelle zu löschen, die mehreren Bedingungen entsprechen. Hier ist ein Beispiel, wie du dies tun... [mehr]

Kann in Access ein Zahlenfeld mit "" (leerem String) befüllt werden?

In Microsoft Access kann ein Zahlenfeld (z. B. Felddatentyp „Zahl“ oder „Währung“) nicht mit einem leeren String („“) befüllt werden. Wenn du versuchst, e... [mehr]

Wie entferne ich einen Satzwechsel aus einem Datenfeld meiner CSV-Datei mit Access VBA?

Um einen bestimmten Satzwechsel aus einem Datenfeld in einer CSV-Datei mit Access VBA zu entfernen, kannst du den folgenden Ansatz verwenden. Hier ist ein Beispiel, wie du dies umsetzen kannst: 1. **... [mehr]

Wie erstelle ich in Access eine Abfrage?

Um in Microsoft Access eine Abfrage zu erstellen, folge diesen Schritten: 1. **Datenbank öffnen**: Starte Microsoft Access und öffne die Datenbank, in der du die Abfrage erstellen möch... [mehr]