Connection Excel - Access

Fermé
Malex - 28 mai 2002 à 13:20
moustapha_28 Messages postés 1 Date d'inscription dimanche 21 mars 2010 Statut Membre Dernière intervention 21 mars 2010 - 21 mars 2010 à 08:03
Bonjour,
Je suis entrain de travailler sur un petit projet là.
Je ne m'y connais pas profindement dans les applications Windows comme Access - Excel.

Alors afin de ne plus vouloir actualiser mon tableau excel à la main, je voudrais écrire un makro qui qui se connectera à ma Base de donnée Access et écrira directement les informations dans les champs Excel lus de la base de donnée.

Merci de pour votre mail
A voir également:

3 réponses

teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
28 mai 2002 à 13:46
A mon humble avis, il vaut mieux ecrire une procedure en VBA qui mettra le fichier excel a jour, mais je em demande si dans les options de synchro de Acces, il n'y a pas moyen de synchroniser avec Excel...Au fait, pourquoi as tu besoin d'excel?
.  .
\_/
0
Bonjour teebo,

Je comprend ce que tu dis, mais comment faire, quel est le code.
Je suis un programmeur Java, mais là où je travail , je dois réussir cette automation là sinon je serais bientot surmené.

Je voudrais accéder à la base de donnée ACCESS pour afficher le contenu à Excel, puis faire des grafiques ...etc

Je n'ai plus envie de faire ca à la main c'est trop de travail et c'est embêtant.
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793 > Malex
28 mai 2002 à 14:20
OK, tiens fais toi plaisir : ;-)
http://www.mvps.org/accessfr/modules/mdl0035.htm

A partir de ca, tu dois pouvoir faire une petite procedure qui des que tu rajoutes un enregistrement dans ACCESS, ca le rajoutera direct dans Excel, ou alors, tu fais un bouton export et pouf...
Amuses toi bien :-)))

.  .
\_/
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
28 mai 2002 à 14:25
Polopopo, desole, je sais pas ce qui c'est passe...
.  .
\_/
0
Utilisateur anonyme
28 mai 2002 à 14:43
Ben je crois que tu t'es endormi sur le bouton droit de la souris...
:-)

Kalamit,
Je ponce donc j'essuie
0
mr_poussy Messages postés 2739 Date d'inscription vendredi 24 août 2001 Statut Modérateur Dernière intervention 27 février 2013 61
28 mai 2002 à 14:43
et voilou c regle ;)
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793 > mr_poussy Messages postés 2739 Date d'inscription vendredi 24 août 2001 Statut Modérateur Dernière intervention 27 février 2013
28 mai 2002 à 14:49
Merci, c'estplus propre!!!
.  .
\_/
0
mouse Messages postés 136 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 13 avril 2007 10
28 mai 2002 à 19:41
Salut,

voila une solution :

dans Excel, tu cree une nouvelle macro.
Tu ajoutes dans les references (outils - references) celle qui s'appele "Microsoft DAO 3.6 Object Library".
Tu peux ainsi utiliser les objets pour acceder a ta bases de donnees.

Ensuite voila ce que tu ecrit dans ta macro :

Dim Db As Database, Re As Recordset, i as Integer
Set Db = OpenDatabase("le path de ta bdd par exemple c:\bd1.mdb")
Set Re = Db.OpenRecordset("le nom de la table qui contient les infos", dbOpenSnapshot)
i = 5
Do Until Re.EOF //tu fais une boucle sur les enregistrement de ta table
Range("E" & i).Select
ActiveCell.FormulaR1C1 = Re("le nom du champ de ta table dont tu veux la valeur")
i = i + 1
Re.MoveNext
Loop

et voila, il ne reste plus qu'a lancer la macro. Dans mon exemple, il remplira les lignes depuis E5 jusqu'a Ex, x etant le nombre d'enregistrement de ta table.

Pour info, dans les parametres de Recordset, tu peux soit entrer le nom d'un table, soit ecrire une requete SQL, mais dans ce cas je crois (je suis plus sur) que la constante dbOpenSnapshot pose probleme.

Voila, si cela marche aps, dis le moi, mais je viens de le faire a l'instant

A+
Mouse

PS: desole, pas d'accent sur le clavier...
0
Salut Mouse et merci pour ton coup de pouce.
Mais j'ai testé ton code et ca ne marche pas.
Je crois qu'il ya un probleme au niveau du Typ Database.

Est-ce un type ? ou alors il est mal écris.
J'ai essayé de taper l'aide, et je n'ai pu voir que le type DataTable.

Merci de vouloir me débloquer
0
mouse Messages postés 136 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 13 avril 2007 10 > Malex
29 mai 2002 à 13:24
Es-tu sur d'avoir ajoute la reference "Microsoft DAO 3.6 Object Library" ?
car si tu ne l'a pas fait, il ne reconnaitra pas l'objet Database.

Cette reference est comme une class, qui te permet d'acceder a des objets database.

Tiens moi au courant
0
Malex > mouse Messages postés 136 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 13 avril 2007
29 mai 2002 à 14:40
Je ne pense pas que je l'ai fait.
Et comment il faut l'ajouter. Tu sais moi je vis en Allemagne et je travaille avec des logiciels Allemand.

Passe moi ton mail et je t'envoie le Screen Shot .
A tout à l'heure

malex_24@web.de
0
mouse Messages postés 136 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 13 avril 2007 10 > Malex
29 mai 2002 à 16:29
Je t'ai ecrit un mail, sans reponse....
tu as reussis ?

tu peux voir mon adresse mail en pointant ta sourie sur mon nom, dans la barre d'etat en bas de ton navigateur...

A+
0
malex > mouse Messages postés 136 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 13 avril 2007
4 juin 2002 à 12:59
Je t'ai envoyé un mail hier
0