Bonjour,

Pour ma part je cherche bien à créer un code VBA dans un classeur excel pour exporter toutes les données (sans filtre) d'une table Access vers un onglet Excel.
J'ai suivi le tutorial que j'ai trouvé sous le lien suivant:
http://excel.developpez.com/faq/?pag...ouveauClasseur
Cependant, quand je reproduit le code j'obtiens le message d'erreur suivant:
Erreur d'exécution '-2147467259 (80004005)'
Format de base de données ('C:\Chemin d'accès\Base.accdb') non reconnu.

Est-ce un problème de version par rapport à l'instruction "provider=microsoft.jet.oledb.4.0; data source="?

Pour info, si ça aide, je travaille sous Windows XP Professional SP3 (Version 2002) & Microsoft Office 2010.

Par ailleurs si vous connaissez des liens vers des tutoriaux avec des exercices pour se former à VBA (Excel et/ou Access) je suis preneuse.

Merci d'avance!

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
Sub Test()
    TransfertAccess_Vers_Excel "C:\SauvegardeClasseur.xls", "NomFeuille"
End Sub
 
 
Sub TransfertAccess_Vers_Excel(NomClasseur As String, maFeuille As String)
    Dim AccessCnn As ADODB.Connection
    Dim maBase As String, maTable As String
    Dim nbEnr As Long
 
    'Chemin de la base Access
    maBase = "C:\Documents and Settings\dossier\database.mdb"
    'Nom de la table Access
    maTable = "Table1"
 
    'Connection à la base Access
    Set AccessCn = New ADODB.Connection
    AccessCnn.Open "provider=microsoft.jet.oledb.4.0; data source=" & maBase
 
    'Transfert les données d'Access vers Excel
    AccessCnn.Execute "SELECT * INTO [Excel 8.0;" & _
        "Database=" & NomClasseur & "].[" & maFeuille & "] FROM " & maTable, nbEnr
 
    AccessCnn.Close
    Set AccessCnn = Nothing
End Sub