Créer une base par VBA
La création d'une base par VBA se réalise facilement
DBEngineDBEngine.Workspaces(0).CreateDatabase "LaBase.mdb", dbLangGeneral, dbVersion40
Ce qui créera une base au format Access 2000. Mais, il ne semble pas exister de constante pour pouvoir créer un base au format 2002-2003.
En utilisant la fonction suivante, cela devient tout de même possible.
Function CreateMDB(strDBName As String, Optional iVersion As Integer)
'/
'/ Usage: CreateMDB "MaBase.mdb", 2003
'/
On Error GoTo ErrHandler
Dim oApp As Access.Application
Dim sFile As String, sDFF As String
Dim sVers As String, sSetting As String
sFile = strDBName
If Right(sFile, 4) <> ".mdb" Then
sFile = sFile & ".mdb"
End If
If iVersion = 2000 Then
sVers = "9"
Else
sVers = "10"
End If
sSetting = "Default File Format"
Set oApp = New Access.Application
sDFF = oApp.GetOption(sSetting)
Call oApp.SetOption(sSetting, sVers)
Call oApp.NewCurrentDatabase(sFile)
Call oApp.SetOption(sSetting, sDFF)
ExitHandler:
If (oApp Is Nothing) Then
'skip
Else
Set oApp = Nothing
End If
Exit Function
ErrHandler:
Call MsgBox(CStr(Err.Number) & vbCrLf & Err.Description)
Resume ExitHandler
End Function
Note: Si vous rencontrez une méthode plus simple, merci de la signaler.
Dernière modification : 25/02/2006 16:39
Catégorie : - Modules
Page lue 9704 fois