Remplir un combobox par des donnes d'un champs access [Résolu]

Signaler
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011
-
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011
-
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

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
70
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 ;-)
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
70
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
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011

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
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
70
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.
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011

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
Messages postés
16
Date d'inscription
mardi 1 février 2011
Statut
Membre
Dernière intervention
8 mai 2011

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