Remplir un combobox par des donnes d'un champs access

Résolu
batmannet
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011
- 26 avril 2011 à 00:57
batmannet
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011
- 26 avril 2011 à 23:39
bonjour tout le monde
j'ai fait la requette suivante

requete = "select Nom fournisseur from Fournisseur "
Set rs = DTB.Execute(requete)
txtNomFrs.Clear 'on le vide au cas ou.
For I = 0 To rs.RecordCount
txtNomFrs.AddItem rs(1)
Next

mais j'ai trouvé le problème suivant au niveau d’exécution
Set rs = DTB.Execute(requete)

erreur d’exécution "424" - objet requis

et j'ai rien compris comment résoudre ce problème

6 réponses

cs_Jack
Messages postés
14007
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
78
26 avril 2011 à 21:20
Il te faut insérer chaque data dans ta ComboBox ?
Bah tu fais pareil que ce que tu écris en premier, en supposant que txtNomFrs soit une ComboBox (nom très mal choisi)
Choix de la syntaxe :
rs![Nom fournisseur]
rs.Fields("[Nom fournisseur]").Value
rs.Fields(1).Value

Mais tout ça, ça se trouve parmi les codes qui parlent de base de données - cherche un peu aussi ;-)
3
cs_Jack
Messages postés
14007
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
78
26 avril 2011 à 09:28
Salut

Comment sont déclarés DTB et rs, de quels objets s'agit-il ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
[img]http://allproj
0
batmannet
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011

26 avril 2011 à 14:57
salut
rs:
**partie dans un module
Public rs As ADODB.Recordset
et j'ai tous réglé.

DTB
j'ai pris
-----requete = "select Nom fournisseur from Fournisseur "
Set rs = DTB.Execute(requete)
txtNomFrs.Clear 'on le vide au cas ou.
For I = 0 To rs.RecordCount
txtNomFrs.AddItem rs(1)
Next -----------
d’après notre site code-source.mais lorsque j’exécute il m'affiche le problème que j'ai deja lancé.
si vous avez une idée concernant mon problème je vous en pris de m'aider
MES SALUTATIONS DISTINGUÉES
0
cs_Jack
Messages postés
14007
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
78
26 avril 2011 à 15:33
Normalement, le .Execute est réservé aux commandes ne renvoyant pas de données, comme les Insert Into ou les Delete
Pour charger une sélection, utiliser :
rs.Open LaRequete, LaConnexion, adOpenStatic, adLockReadOnly

D'autre part, si le nom du fournisseur est un seul et unique champ nommé "nom<espace>fournisseur", il faut encadrer ce nom par des crochets, sinon SQL ne saura pas interpréter cet espace
requete = "select [Nom fournisseur] from Fournisseur " 
De même pour tous les champs comportant des acents.
Les noms des champs doivent être scrupuleusement identiques à ceux déclarés dans la table.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
batmannet
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011

26 avril 2011 à 19:45
salut
oui tu as raison mais c'est au niveau d'ouverture de la connexion
pour moi j'ai déjà fait ça ,

mon problème c'est comment prendre les infos dedans le [Nom fournisseur] et l'affecter au combobox lors de l'ouverture

on considère que dans load de la feuille la connexion sera ouverte

et merci beaucoup
0
batmannet
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011

26 avril 2011 à 23:39
merci pour votre réponse votre parole m'a donné un ésprit de changer la façon de realiser ce projet (gestion de stock) .

merci de votre aide
0