Tables

1.5 Testare il formato (testo, numerico, data, ...) di un campo via codice.
  Lbo
(D)
Come è possibile testare il formato (testo, numerico, data, ...) di un campo di una tabella via codice VB?

(R)
E' possibile settando un field sul campo e controllando il valore della proprietà type del field. La proprietà type restituisce un valore numerico, vedi l'help per i dettagli.
La routine fCodTipoDati2DescTipoDati, dato il valore numerico, restituisce una stringa col tipo dati del campo.

Dim dbs As Database
Dim tdf As TableDef
Dim fld As Field
Set dbs = CurrentDb
Set tdf = dbs.TableDefs("Nometabella")
Set fld = tdf.Fields("Nomecampo")
MsgBox "Il tipo del campo e': " & fCodTipoDati2DescTipoDati(fld.Type)

Public Function fCodTipoDati2DescTipoDati(CodTipoDati As Long) As String
    Select Case CodTipoDati
        Case 1
            fCodTipoDati2DescTipoDati = "Boolean"
        Case 2
            fCodTipoDati2DescTipoDati = "Byte"
        Case 3
            fCodTipoDati2DescTipoDati = "Integer"
        Case 4
            fCodTipoDati2DescTipoDati = "Long"
        Case 5
            fCodTipoDati2DescTipoDati = "Currency"
        Case 6
            fCodTipoDati2DescTipoDati = "Single"
        Case 7
            fCodTipoDati2DescTipoDati = "Double"
        Case 8
            fCodTipoDati2DescTipoDati = "Date/Time"
        Case 9
            fCodTipoDati2DescTipoDati = "Binary"
        Case 10
            fCodTipoDati2DescTipoDati = "Text"
        Case 11
            fCodTipoDati2DescTipoDati = "Long Bin. (Ole obj.)"
        Case 12
            fCodTipoDati2DescTipoDati = "Memo"
        Case 15
            fCodTipoDati2DescTipoDati = "GUID"
        Case 16
            fCodTipoDati2DescTipoDati = "BigInt"
        Case 17
            fCodTipoDati2DescTipoDati = "Var binary"
        Case 18
            fCodTipoDati2DescTipoDati = "Char"
        Case 19
            fCodTipoDati2DescTipoDati = "Numeric"
        Case 20
            fCodTipoDati2DescTipoDati = "Decimal"
        Case 21
            fCodTipoDati2DescTipoDati = "Float"
        Case 22
            fCodTipoDati2DescTipoDati = "Time"
        Case 23
            fCodTipoDati2DescTipoDati = "TimeStamp"
    End Select
End Function


Se pensate di avere del materiale freeware interessante e volete pubblicarlo, allora leggete qui.