Les mémos
Je débute...
Visites

 987450 visiteurs

 3 visiteurs en ligne

Recherche
 
Fermer

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.


Catégorie : Les mémos - Modules
Page lue 7641 fois