Requete & Combo Box

Signaler
Messages postés
19
Date d'inscription
mercredi 15 janvier 2003
Statut
Membre
Dernière intervention
4 mars 2003
-
Messages postés
42
Date d'inscription
vendredi 9 avril 2004
Statut
Membre
Dernière intervention
17 février 2005
-
Bonjour,
Comment fait on pour lier une source de données de type SQL (Requête) à une combobox en vba ?

9 réponses

Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

salut
voila comment on fais: du moin si j'ai bein capter ta question

'--lie ta req et ta combobox--
[le nom de ta combobox].rowsource = "[requête SQL]"
'--mise a jours pour affichage--
[le nom de ta combobox].requery

a+

marcelin
Messages postés
19
Date d'inscription
mercredi 15 janvier 2003
Statut
Membre
Dernière intervention
4 mars 2003

oups le mél est pas passé donc je recommence:
merci marcelin c exactement ça que je ve faire mais g un petit pb: avec le code suivant le compilateur me renvoie une erreur 424: Objet requis

**************************************************
Dim cnx As New ADODB.Connection
Dim rst As New Recordset
Dim sql As String
sql " select distinct(TIBNIAIDQ) from tiersb where TIBCARJ 428028 "
filetoopen = GetSetting("Mon Application", "Paramètres", "message")
MsgBox filetoopen
cnx.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filetoopen & ";Persist Security Info=False"
rst.Open (sql), cnx, adOpenKeyset, adLockReadOnly

cbagent.RowSource = sql
cbagent.Requery

**************************************************

Pb de synthaxe ?
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

désoler mais je capte rien à ton code !!!!
c'est le dawa la dedant
c'est une connection a quel type de base?
si c'est Access, y a des connection plus simple et qui marche à chaque fois.(a moin que soit en ASP!)
et si c'est pas Access y plus simple aussi.
merci de me filer + d'explication

a+

marcelin
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

sinon a tu la référence Ms DAO 3.6 dans tes référence?
ca peu venir de là !
Messages postés
19
Date d'inscription
mercredi 15 janvier 2003
Statut
Membre
Dernière intervention
4 mars 2003

je l'avais pas coché mais g tjs le même problème d'objet requis alors je détaille un peu plus mon code :
**Déclaration des objets de connexion pour une connexion directe a Access 2000**
Dim cnx As New ADODB.Connection
Dim rst As New Recordset

Dim sql As String ' var de concaténation de chaine pour la requête
sql " select distinct(TIBNIAIDQ) from tiersb where TIBCARJ 428028 " 'la requête
filetoopen = GetSetting("Mon Application", "Paramètres", "message") 'là je vais chercher l'adresse d'une base de donnée dans ma base de registre
MsgBox filetoopen ' j'affiche le chemin pour voir si il est correct
cnx.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filetoopen & ";Persist Security Info=False" 'connexion à la base access
rst.Open (sql), cnx, adOpenKeyset, adLockReadOnly 'récupère le resultat de la requête dans un recorset ... euh ce qui sert à rien dans ce cas précis (ceci est une appli test alors g recopier des bouts de mon appli principale)

cbagent.RowSource = sql ' cbagent est le nom de ma combobox
cbagent.Requery
Messages postés
19
Date d'inscription
mercredi 15 janvier 2003
Statut
Membre
Dernière intervention
4 mars 2003

je viens d'essayer avec un cbagent.visible= false et il me met la même erreur !
Faut-il spécifier la form à laquelle appartient la cb box ?
et si oui comment ?
Messages postés
19
Date d'inscription
mercredi 15 janvier 2003
Statut
Membre
Dernière intervention
4 mars 2003

Ah oui dernière chose que g pas précisé mais ki doit avoir son importance, je suis dans un module, pas sur du code associé à des boutons de la feuille etc...
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

si tu es dans un module, tu doit pointer ton objet:
[nom du form ou se trouve ta combo box].cbagent

a+

marcelin
Messages postés
42
Date d'inscription
vendredi 9 avril 2004
Statut
Membre
Dernière intervention
17 février 2005

j'aimerai faire la meme chose mais avec une textbox. Comment puis je faire? Je cherche un truc du genre rowsource sur la textbox.

ben