Je tente de transférer des données d'une feuille Excel vers une base de
données Access.
Dans Excel, j'utilise le programme suivant pour tester ma connexion avec ma
base de données:
Dim db As Database
Set db = OpenDatabase("c:\temp\base_de_donnee.mdb")
MsgBox "Connexion OK."
J'ai défini une référence à Microsoft DAO 3.6 Object Library.
Sur mon PC, ce programme marche.
Sur le PC de mon collègue, avec le même programme et la même référence à
DAO, j'ai le message d'erreur suivant:
Erreur d'exécution '429':
Un composant ActiveX ne peut pas créer d'objet.
Et un exemple de code pour exporter un tableau Excel vers une table ACCESS
Pour le temps que va durer l'exportation, on doit créer une plage nommée de la colonne à exporter vers la base de données.
Cette plage nommée dans l'exemple s'appelle "Plage". La toute première ligne de la plage nommée "plage" représente une étiquette de colonne du même nom de champ de la table où les données seront exportées.
Dans l'exemple suivant, il ne te restera plus qu'à adapter le nom des objets selon ton application.
toto = Nom de la table dans la base de données Comptoir.mdb
Pour ce qui est du champ de numéro automatique dans ta base de données, il va se mettre à jour tout seul !
Évidemment, tu dois ajouter la bibliothèque : Microsoft DAO 3.6 objects Librairy '-------------------------------------------- Sub ExporterVersAccess()
Dim bd As DAO.Database Dim Rst As DAO.Recordset
With Worksheets("Feuil1") .Range("B4:B" & .Range("B65536").End(xlUp).Row).Name = "Plage" End With
Set bd = OpenDatabase(ThisWorkbook.FullName, False, False, "excel 8.0")
bd.Execute "INSERT INTO toto IN 'C:ExcelComptoir.mdb' SELECT * FROM [Plage]" ThisWorkbook.Names("Plage").delete bd.Close Set bd = Nothing End Sub '--------------------------------------------
Salutations!
"Alain" a écrit dans le message de news:
Je tente de transférer des données d'une feuille Excel vers une base de données Access. Dans Excel, j'utilise le programme suivant pour tester ma connexion avec ma base de données:
Dim db As Database Set db = OpenDatabase("c:tempbase_de_donnee.mdb") MsgBox "Connexion OK."
J'ai défini une référence à Microsoft DAO 3.6 Object Library.
Sur mon PC, ce programme marche. Sur le PC de mon collègue, avec le même programme et la même référence à DAO, j'ai le message d'erreur suivant:
Erreur d'exécution '429': Un composant ActiveX ne peut pas créer d'objet.
Et un exemple de code pour exporter un tableau Excel vers une table ACCESS
Pour le temps que va durer l'exportation, on doit créer une plage nommée
de la colonne à exporter vers la base de données.
Cette plage nommée dans l'exemple s'appelle "Plage".
La toute première ligne de la plage nommée "plage" représente une étiquette
de colonne du même nom de champ de la table
où les données seront exportées.
Dans l'exemple suivant, il ne te restera plus qu'à adapter le nom des
objets selon ton application.
toto = Nom de la table dans la base de données Comptoir.mdb
Pour ce qui est du champ de numéro automatique dans ta base de données, il va se mettre à jour tout seul !
Évidemment, tu dois ajouter la bibliothèque : Microsoft DAO 3.6 objects Librairy
'--------------------------------------------
Sub ExporterVersAccess()
Dim bd As DAO.Database
Dim Rst As DAO.Recordset
With Worksheets("Feuil1")
.Range("B4:B" & .Range("B65536").End(xlUp).Row).Name = "Plage"
End With
Set bd = OpenDatabase(ThisWorkbook.FullName, False, False, "excel 8.0")
bd.Execute "INSERT INTO toto IN 'C:ExcelComptoir.mdb' SELECT * FROM [Plage]"
ThisWorkbook.Names("Plage").delete
bd.Close
Set bd = Nothing
End Sub
'--------------------------------------------
Salutations!
"Alain" <Alain@discussions.microsoft.com> a écrit dans le message de news:
D2330202-E50C-4D8A-8204-C4D0F4F8B893@microsoft.com...
Je tente de transférer des données d'une feuille Excel vers une base de
données Access.
Dans Excel, j'utilise le programme suivant pour tester ma connexion avec ma
base de données:
Dim db As Database
Set db = OpenDatabase("c:tempbase_de_donnee.mdb")
MsgBox "Connexion OK."
J'ai défini une référence à Microsoft DAO 3.6 Object Library.
Sur mon PC, ce programme marche.
Sur le PC de mon collègue, avec le même programme et la même référence à
DAO, j'ai le message d'erreur suivant:
Erreur d'exécution '429':
Un composant ActiveX ne peut pas créer d'objet.
Et un exemple de code pour exporter un tableau Excel vers une table ACCESS
Pour le temps que va durer l'exportation, on doit créer une plage nommée de la colonne à exporter vers la base de données.
Cette plage nommée dans l'exemple s'appelle "Plage". La toute première ligne de la plage nommée "plage" représente une étiquette de colonne du même nom de champ de la table où les données seront exportées.
Dans l'exemple suivant, il ne te restera plus qu'à adapter le nom des objets selon ton application.
toto = Nom de la table dans la base de données Comptoir.mdb
Pour ce qui est du champ de numéro automatique dans ta base de données, il va se mettre à jour tout seul !
Évidemment, tu dois ajouter la bibliothèque : Microsoft DAO 3.6 objects Librairy '-------------------------------------------- Sub ExporterVersAccess()
Dim bd As DAO.Database Dim Rst As DAO.Recordset
With Worksheets("Feuil1") .Range("B4:B" & .Range("B65536").End(xlUp).Row).Name = "Plage" End With
Set bd = OpenDatabase(ThisWorkbook.FullName, False, False, "excel 8.0")
bd.Execute "INSERT INTO toto IN 'C:ExcelComptoir.mdb' SELECT * FROM [Plage]" ThisWorkbook.Names("Plage").delete bd.Close Set bd = Nothing End Sub '--------------------------------------------
Salutations!
"Alain" a écrit dans le message de news:
Je tente de transférer des données d'une feuille Excel vers une base de données Access. Dans Excel, j'utilise le programme suivant pour tester ma connexion avec ma base de données:
Dim db As Database Set db = OpenDatabase("c:tempbase_de_donnee.mdb") MsgBox "Connexion OK."
J'ai défini une référence à Microsoft DAO 3.6 Object Library.
Sur mon PC, ce programme marche. Sur le PC de mon collègue, avec le même programme et la même référence à DAO, j'ai le message d'erreur suivant:
Erreur d'exécution '429': Un composant ActiveX ne peut pas créer d'objet.