moudz84
Messages postés64Date d'inscriptionmardi 5 septembre 2006StatutMembreDernière intervention27 septembre 2007
-
30 juil. 2007 à 09:35
cs_Nicko11
Messages postés1141Date d'inscriptionmercredi 7 mars 2007StatutMembreDernière intervention19 septembre 2007
-
31 juil. 2007 à 22:24
salut, j'utilise actuellement le access 2002 je voudrai savoir si il y a des tuto pour les connexion au base de données, comment utiliser des tables de differentes bases, se connection a une base importer, ou un lien d'une base etc.
SVP aidez moi, c'est pour mon stage et je suis actuellement bloqué
cs_Nicko11
Messages postés1141Date d'inscriptionmercredi 7 mars 2007StatutMembreDernière intervention19 septembre 20073 30 juil. 2007 à 14:29
Salut,
allez, un petit exemple histoire de te montrer un peu à quoi ca ressemble:
Aller dans Outils puis référence et cochez MicroSoft Active Data Object 2.? (? = 5 ou plus).
Ensuite le code:
Dim acn As New ADODB.connection
Dim rs As New ADODB.recordset
acn.CursorLocation = adUseClient
acn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Chemin_DataSource 'Chemin du fichier .mdb
rs.Open "SELECT * FROM Nom_Table", acn, adOpenDynamic, adLockReadOnly
Tu n'as plus qu'à remplacer le chemin et le nom de la table et c'est parti.
Par contre, si ta base est protegé avec un mode de passe, ca change la connexion.
Je pense qu'avec ca, tu peux partir avec une base.
Encore une chose, si tu codes en VBA Access (ton sujet) et dans la meme base que ta table, tu n'as plus besoin de la connexion, juste de :
rs.Open "SELECT * FROM Nom_Table", CurrentProject.Connction, adOpenDynamic, adLockReadOnly
moudz84
Messages postés64Date d'inscriptionmardi 5 septembre 2006StatutMembreDernière intervention27 septembre 2007 30 juil. 2007 à 15:10
salut, merci pour vos reponse
une ptite question pour toi nicko11
je code en VBA Access et dans la meme base que ma table
il suffit donc de faire ce que t'as dit a la fin, mais comment je pourrait afficher le resultat dans une liste deroulante par exemple ( desolé je suis vraiment debutant dans access et vba)
cs_Nicko11
Messages postés1141Date d'inscriptionmercredi 7 mars 2007StatutMembreDernière intervention19 septembre 20073 30 juil. 2007 à 15:52
Alors la, c'est bien plus facile. Utilise ADO seulement pour des traitements un peu complexes ou pour des connexions a des bases externes.
Donc, oui, la derniere solution est envisageable mais la meilleur (si tu t'y connais) est de créer des requetes SQL.
Pour la mettre en source de ta liste, tu vas dans le mode création de ton formulaire.
Tu vas dans les propriétés de ta liste et tu choisis Table/requete pour la propriété Origine Source.
Ensuite tu tapes la requete SQL dans la propriété Contenu:
"SELECT Champ1, Champ1 AS toto, Champ1 AS tata FROM Ta_Table''
Faut remplacer le nom des champs que tu veux affichier (* pour tous les champs) et le nom de la table.
Le AS ... sert a modifier les entetes de colonnes dans la liste (si propriété Entete colonne a OUI).
Est ce que cette méthode te convient ou tu veux vraiment passer par ADO ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
moudz84
Messages postés64Date d'inscriptionmardi 5 septembre 2006StatutMembreDernière intervention27 septembre 2007 31 juil. 2007 à 09:25
en fait, je doit mettre deux liste deroulante , qd je change la premiere la deuxieme doit changer... la premiere liste est la liste du departement et la deuxieme est la ville
si je prend la premiere solution, je ne pourrai changer la requete , alors que je peux placer la deuxieme requete dans le onchange de la premiere.
qd je fais le rs.Open "SELECT * FROM Nom_Table", acn, adOpenDynamic, adLockReadOnly
comment je fait pour placer tout ces ligne dans la liste deroulante???
cs_Nicko11
Messages postés1141Date d'inscriptionmercredi 7 mars 2007StatutMembreDernière intervention19 septembre 20073 31 juil. 2007 à 10:49
Je ne comprends pas exactement la facon de faire que tu recherches. Je te preposes de faire par requete car c'est bien plus simple que de passer par ADO.
"comment je fait pour placer tout ces ligne dans la liste deroulante???"
Regarde mon post du "30/07/2007 15:52:16" et tu auras ta reponse.
Ensuite pour la 2eme liste tu fais la meme chose en rajoutant une clause Where.
"SELECT ville FROM A WHERE departement =[Nom_De_la_premiere_liste];"
moudz84
Messages postés64Date d'inscriptionmardi 5 septembre 2006StatutMembreDernière intervention27 septembre 2007 31 juil. 2007 à 15:07
une derniere question nicko :D
y'a un truc qui marche pas la, en fait j'ai un boutton, quand je l'appui je doit faire des operations, et parmis ces operation je doit parcourir une table et afficher les resultats.
j'ai essayer d'utiliser tes reponses mais ils marche pas la...
voila ce que j'ai fait:
pour le bouton sur evenement souris apuyé j'ai créée un Sub
dans ce sub j'ai mis:
Dim lignes As Recordset
Dim acn As New ADODB.Connection