Interaction Excel / Access avec VBA
skk201
Messages postés
942
Date d'inscription
Statut
Membre
Dernière intervention
-
skk201 Messages postés 942 Date d'inscription Statut Membre Dernière intervention -
skk201 Messages postés 942 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
je voulais savoir si vous savez s'il y a moyen de faire une macro excel qui va chercher une valeur dans une table access pour l'inséré dans une cellule.
Je m'explique.
Là ou je travaille, nous devons prendres des demandes (inscription). Pour cela nous utilsion une feuille excel.
Dans ce classeure excel il y a une zone consacré à des référances (Dr, Enseigants, etc.).
L'idée serait que si la cellule A1 contiennt le nom du prof. que la macro aille chercher ce nom dans la BD Access et qu'elle en retir le numéro de téléphone de cette personne pour l'inscrire dans la cellule A2.
Je veux surtout savoir si c'est possible avant de savoir comment le faire.
Merci a tous.
--
*Pensez mettre vos messages en [Résolu] et cliquer sur le + des conseil qui vous ont été utils"
je voulais savoir si vous savez s'il y a moyen de faire une macro excel qui va chercher une valeur dans une table access pour l'inséré dans une cellule.
Je m'explique.
Là ou je travaille, nous devons prendres des demandes (inscription). Pour cela nous utilsion une feuille excel.
Dans ce classeure excel il y a une zone consacré à des référances (Dr, Enseigants, etc.).
L'idée serait que si la cellule A1 contiennt le nom du prof. que la macro aille chercher ce nom dans la BD Access et qu'elle en retir le numéro de téléphone de cette personne pour l'inscrire dans la cellule A2.
Je veux surtout savoir si c'est possible avant de savoir comment le faire.
Merci a tous.
--
*Pensez mettre vos messages en [Résolu] et cliquer sur le + des conseil qui vous ont été utils"
2 réponses
-
-
Tout d'abord :
Chercher la chaîne de connexion qui correspond à sa version d'Access
Ensuite dans l'éditeur VB, ajouter la référence Microsoft ActiveX Data Object x.xx Library (Outils > Références)
Dans un module:
Option Explicit '****************************************************** '/!\ Référence Microsoft ActiveX Data Object x.xx Library nécessaire * '****************************************************** 'Objet connexion ADO Private AdoConn As ADODB.Connection Private Const user = "" Private Const pw = "" 'Procédure de connexion Public Sub OpenCnxBD() Dim CnxString As String Dim chemin As String chemin = "C:\data\maBdd.mdb" 'chemin d'accès à la Bdd Set AdoConn = New ADODB.Connection 'création de l'objet connexion If AdoConn.State = adStateOpen Then 'si la base est déjà ouverte alors on sort de la procédure MsgBox "La connection est déjà ouverte" Exit Sub End If '======== Ouverture Access ============' ' A modifier pour autres bases ' '======================================' 'Adapter la chaine de connexion en foction de la version Access CnxString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & chemin & ";" & _ "user ID=" & user & ";" & _ "password=" & pw & ";" & _ "Persist Security Info=False" AdoConn.Open CnxString 'passage de la chaine de connexion AdoConn.CursorLocation = adUseClient On Error Resume Next If Err <> 0 Or AdoConn.State = adStateClosed Then 'si un erreur de connexion se produit MsgBox "Connection impossible avec la base" Exit Sub End If End Sub
Je te laisse chercher pour le passage de requêtes à la base.
«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
Nicolas Boileau