Lien entre excel et access Vba ?

fanjomtl Messages postés 20 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 27 janvier 2008 - 28 juin 2007 à 22:04
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 29 juin 2007 à 08:16
Salut les pros !!

Je continue dans mon apprentissage de Vba avec office et là j'aimerais jouer avec les bases de données.

J'ai un formulaire dans Excel qui est codé en Vba et qui me permet de récupérer des infos ( noms et numéros de téléphones).

J'aimerais avoir une base de données des noms et numéros de téléphones (j'ai Access 2003).
Quand un nouveau nom est entré avec son numéro de téléphone dans mon formulaire Excel, j'aimerais que celui-ci s'ajoute à la base Access.

Ceci implique :  
  De pouvoir lire dans la base de donnée access depuis excel
  De pouvoir écrire dans de donnée access depuis excel

Je ne sais pas si c'est facilement réalisable... si oui, je vous serais très reconnaissant de m'apprendre comment faire. Si non, pouvez-vous m'indiquer des tutoriaux/articles à lire pour que j'apprene à le faire ?

Y a t-il des ptites subtilités à savoir dans la communication Excel <-> Access qu'il vaut mieu savoir en débutant pour ne pas perdre des heures bêtement ?

Merci à tous !
@+

4 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
28 juin 2007 à 23:54
Fais une recherche sur ces mots ici-même sur ce site et tu devrais trouver pas mal d'exemples

Access.Application
Excel.Application

Tu peux
soit travailler  en créant une référence au programme distant directement dans le menu de l'IDE (cocher Access, par exemple, si tu codes sous Excel) et utliser
Dim objAccess as New Access.Application

soit créer une référence directe avec CreateObject("Access.Application")

Sous Office, préfère la 2e option. Ça t'évitera les problèmes de versions différentes d'un ordi à l'autre.

MPi
0
fanjomtl Messages postés 20 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 27 janvier 2008
29 juin 2007 à 00:26
Merci de la réponse, je fais ma recherche.

Petite question de terminologie.. Qu'est ce qu'un  DataTable et un DataAdapter dans l'exemple:   

Dim DT As New DataTable
Dim dataAdapter AsNew OleDb.OleDbDataAdapter(sqlStr, connStr)
dataAdapter.Fill(DT)

Merci
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
29 juin 2007 à 03:19
Sans être certain, je pense que c'est du .NET

MPi
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
29 juin 2007 à 08:16
Salut,

Effectivement Les DataTable et les DataAdapter sont des Objets .NET

Pour en revenir à ton problème, tu n'as aucunement besoin de référencer ACCESS depuis EXCEL. Il te suffit de faire une connexion à ta base de données à l'aide d'ADO => voir la section Codes qui regorger d'exemples sur la connection à une base de données.
Recherche: Connection ACCESS ADO

Grace à ADO tu pourras utiliser des objet Connection, Recordset qui te permetrons de lire et ecrire dans ta base de données access et ce sans jamais ouvrir ce bon vieil ACCESS.
Voila en espérant avoir pu t'aider un peu.

@+: Ju£i?n
Pensez: Réponse acceptée
0
Rejoignez-nous