Lecture d'un fichier .accdb par macro Excel
Bonjour à tous,
je développe en ce moment un petit outil en vba sur Excel, outil qui va lire et écrire des données dans une base Access existante.
Cet outil est destiné à être utilisé par plusieurs utilisateurs de ma boîte qui n'ont pas Access sur leur machine, d'où le choix de créer l'interface dans Excel.
Les accès à la base se font sur ce modèle :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
Public db As DAO.Database
Public rs As DAO.Recordset
Public strCritere As String
Sub MaMacro()
Set db = DBEngine(0).OpenDatabase(chemin_de_ma_base_de_donnees)
Set rs = db.OpenRecordset("MaTable", dbOpenDynaset)
strCritere = "[champ] LIKE " & Chr(34) & ce_que_je_cherche & Chr(34)
rs.FindFirst strCritere
If Not rs.NoMatch Then
MsgBox rs.Fields(champ_que_je_veux_afficher).Value
End If
rs.Close: db.Close: Set rs = Nothing: Set db = Nothing
End Sub |
Tout fonctionne à merveille sur ma machine sur laquelle Access est installé.
Je l'ai testé sur la machine d'un collègue qui n'a pas Access, et j'ai eu droit au joli message :
Erreur d'exécution '429':
Un composant ActiveX ne peut pas créer d'objet.
Vérification faite dans l'éditeur vba, les références "Microsoft Access 15.0 Object Library" et "Microsoft DAO 3.6 Object Library" sont bien présentes sur sa machine.
Je précise toutefois que je lui ai copié manuellement la librairie "Microsoft Access 15.0 Object Library" sur son PC car il ne l'avait pas.
Quelqu'un saurait me guider vers la solution ? (sachant que la solution d'installer Access sur toutes les machines n'est pas envisageable pour des raisons de license)
Merci d'avance ! :hola: