VBA - Connecter une base de donnée (MDB) à excel

Connecter une base de donnée access (MDB) dans une application excel.
- Ajouter la référence
- Microsoft DAO object librairy X.X
Dans un module général (Module1 par exemple) coller le code ci-dessous
Sub CopieDBaccess() Dim BDexp As Database Dim Table As Recordset Dim TbDef As TableDef Dim Ch As String, Lig As Long, i As Integer Ch = "Chemin & \ & NomDeLaBD.MDB" Set BDexp = DBEngine.Workspaces(0).OpenDatabase(Ch) Set Table = BDexp.OpenRecordset("NomDeLaTable", dbOpenDynaset) 'Debug.Print Table.Name Set TbDef = BDexp.TableDefs("NomDeLaTable") Lig = 3 dim Nom(TbDef.Fields.Count - 1) As String 'Place les titres des colonnes With Sheets("Feuil1") For i = 0 To TbDef.Fields.Count - 1 'Pour avoir toute la ligne 'Debug.Print TbDef.Fields(i).Name Nom(i) = TbDef.Fields(i).Name .Cells(Lig, i + 3) = Nom(i) Next 'Caller sur le 1er enrégistrement Table.MoveFirst Lig = 4 While Not Table.EOF For i = 0 To TbDef.Fields.Count - 1 'Pour avoir toute la ligne .Cells(Lig, i + 3) = Table(Nom(i)) Next i Lig = Lig + 1 Table.MoveNext 'Passer à l'enrégistrement suivant Wend End With Table.Close BDexp.Close Set BDexp = Nothing Set Table = Nothing End Sub
Ce document intitulé « VBA - Connecter une base de donnée (MDB) à excel » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.