Diensten Producten Support Developers Bedrijfsinformatie Contact gegevens Inhoud website Start pagina Navigatie balk
back terug
 

U bevindt zich hier: Home > Developer > Visual Basic > VB code 


VBA

Veranderen van de veldlengte van een veld in een bestaande tabel (DAO)

LET OP: Deze functie werkt alleen in Access 2000 of later

Als je de lengte van een veld wilt wijzigen in een bestaande tabel, dan zou je verwachten dat je dit kan doen via het FIELD object, door de eigenschap SIZE aan te passen. Deze eigenschap is echter alleen-lezen. Met de onderstaande functie kan met behulp van DAO wel de veldlengte worden aangepast.
Deze functie werkt alleen voor Access databases, het werkt niet op tabellen van andere databases.

Function ChangeTextFieldSize(strDatabase As String, _
                   strTable As String, strField As String, _
                   intSize As Integer) As Boolean

Dim dbs As DAO.Database
Dim fld As DAO.Field
Dim strSQL As String

Set dbs = DAO.DBEngine.Workspaces(0).OpenDatabase(strDatabase)
Set fld = dbs.TableDefs(strTable).Fields(strField)

If fld.Type <> dbText Then
     MsgBox "Het opgegeven veld is geen tekstveld."
     Exit Function
End If

strSQL = "ALTER TABLE [" & strTable & "] ALTER COLUMN [" & _
                  strField & "] CHAR(" & intSize & ");"

dbs.Execute strSQL
   
Set fld = Nothing
dbs.Close
Set dbs = Nothing

ChangeTextFieldSize = True

End Function