![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE. |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Membre régulier
![]() Date d'inscription: juin 2004
Âge: 26
Messages: 120
|
Bonjour,
Voila je vous expose mon probleme En fait j'aimerais que dans un formulaire, lorsque je rentre une certaine valeur dans un champs, que l'on ai tous les enregistrements concernés par cette valeur qui apparaissent. Le truc c'est que je tombe sur l'erreur suivante:"objet non trouvé dans la collection" voici mon code Code :
Private Sub Modifiable19_AfterUpdate() Dim rs As DAO.Recordset Dim sql As String sql = "select * from Commandes where [date de livraison]=" & Me.Modifiable19 Set rs = CurrentDb.OpenRecordset(sql) Me.Numero_commande.Value = rs.Fields(Numero_commande) Me.date_commande = rs.Fields(date_commande) Me.date_de_livraison = rs.Fields(date_de_livraison) Me.Etat = rs.Fields(Etat) End Sub
__________________
Amicalement Scons |
|
|
|
|
|
#2 (permalink) |
|
Expert Confirmé Sénior
![]() |
salut,
à moins que toutes les variables existent, il faut que tu les transformes en chaines de caractère : Code :
Me.Numero_commande.Value = rs.Fields("Numero_commande") Me.date_commande = rs.Fields("date_commande") Me.date_de_livraison = rs.Fields("date_de_livraison") Me.Etat = rs.Fields("Etat")
__________________
Piou-Piou Poussin Developpeur Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute |
|
|
|
|
|
#3 (permalink) |
|
Membre régulier
![]() Date d'inscription: juin 2004
Âge: 26
Messages: 120
|
Merci jpcheck.
Et ben je me sent bete d'avoir pas vu que j'vais pas mit les guillemets, d'autant plus que j'utilise cette syntaxe dans d'autres applications. Je te remercie de m'avoir eclairé l'esprit. Cependant je bute sur un autre probleme. "impossbile d'attribuer une valeur a cette objet" en fait je cherche a afficher les resultat de la requete dans un formulaire. peut etre que je ne procede pas comme il faut.
__________________
Amicalement Scons |
|
|
|
|
|
#4 (permalink) |
|
Membre régulier
![]() Date d'inscription: juin 2004
Âge: 26
Messages: 120
|
quel element de formulaire faut il utiliser pour afficher tous les resultats de ma requete sql.
En fait dans l'etat actuel du formulaire je dispose d'une section details possedant chacun des champs de ma table "commande" (ce ne sont pas des champs indepedants. C'est d'ailleurs probablement la raison pour laquelle je ne peut pas attribuer de valeur a ces objets. voila si quelqu'un pouvait me donner un ou deux elements de reponses. au besoin je peut poster des screenshots de mon formulaire. Voila merci
__________________
Amicalement Scons |
|
|
|
|
|
#5 (permalink) |
![]() |
Bonjour
Tu n'as pas besoin de DAO Lorsque tu as composé ta requête dans la chaine SQL, tu passes celle-ci en propriété RecordSource de ton formulaire Code :
Private Sub Modifiable19_AfterUpdate() Dim SQL As String SQL = "select * from commandes where [date de livraison] = #" & CDate(Modifiable19) & "#" Me.RecordSource = SQL End Sub
__________________
Pierre Fauconnier -------------------- "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire) Pensez au tag ![]() Mon blog sur DVP - Mes petits papiers sur DVP - Nouveau: Groupe des formateurs - Nouveau: Groupes développeurs QSEA Je ne peux en aucun cas être tenu pour responsable des conséquences de l'utilisation des codes que je fournis dans le cadre des réponses apportées sur les forums, même s'il s'avérait que ces codes sont erronés ou amènent à des dysfonctionnements, de manière manifeste ou non. |
|
|
|
|
|
#6 (permalink) |
|
Membre régulier
![]() Date d'inscription: juin 2004
Âge: 26
Messages: 120
|
Pierre ta solution fonctionne cependant cen'est pas ce que je veu faire.
S i je vais selon ta methode a cahque ouverture du formulaire je tombe sur une boite de dialogue me demandant la valeur de mon parametre "modifiable19" Si je le rentre j'ai effectivement la liste des commandes, selon ce critere, qui apparait. Moi j'aimerais en fait que mon formulaire s'ouvre et m'affiche toutes les commandes de ma base (Pour ça je n'ai pas de prob) Une foi mon formulaire ouvert je voudrais faire une selection des commandes suivant la valeur entrée dans la zone de texte "modifiable 19" Mais la j'ai quelques souci. j'ai essayé d'integrer une procedure evenementielle qui lance ma requete de selection quand j'appuis sur un bouton. En fait lorsque que je clique sur ce bouton je passe ma requete de selection en parametre du Recordsource de mon formulaire. Cependant rien ne s'affiche. Ma liste avec toutes mes commandes disparait et mon champs "modifiable19" se remet a blanc.
__________________
Amicalement Scons Dernière modification par Gabout ; 03/12/2008 à 18h31 |
|
|
|
|
|
#7 (permalink) |
|
Membre régulier
![]() Date d'inscription: juin 2004
Âge: 26
Messages: 120
|
J'ai regardé sur differents forums que j'ai pu trouvé et apparement ma methode de modifier le "recordsource" d'un formulaire via un bouton serait correcte.
Cependant ça ne fonctionne pas chez moi. peut etre s'agit'il d'une erreur de syntaxe dans la requete. la voici Code :
Private Sub Commande39_Click() [Form_rappel des commandes].RecordSource = "SELECT Commandes.*, magasins.* FROM magasins LEFT JOIN Commandes ON magasins.[Code magasin] = Commandes.[code magasins] WHERE Commandes.[date de livraison] = " & Me.Modifiable19 [Form_rappel des commandes].Refresh End Sub
__________________
Amicalement Scons |
|
|
|
|
|
#8 (permalink) |
|
Membre régulier
![]() Date d'inscription: juin 2004
Âge: 26
Messages: 120
|
bon je viens de trouver d'ou vient l'erreur.
En fait l'erreur porte sur le fait que "modifiable19" est une date. Si je fais la meme requete mais avec un autre champs de type numerique (par exemple) ca fonctionne. Donc la syntaxe pour une requete avec une date comme variable doit etre sensiblement differente. faut il mettre quelques choses d'autres que le "&" devant "modifiable19"
__________________
Amicalement Scons |
|
|
|
|
|
#9 (permalink) |
![]() |
Dans mon exemple, je mentionnais un signe # qui permet d'encadrer une date...
Cela étant, les dates posent problème dans la mesure ou elles sont parfois interprétées "à l'envers" (jj/mm/aa => mm/jj/aa). Donc je préfère en général convertir en long, et à ce moment, il n'y a plus de problème d'inversion.
__________________
Pierre Fauconnier -------------------- "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire) Pensez au tag ![]() Mon blog sur DVP - Mes petits papiers sur DVP - Nouveau: Groupe des formateurs - Nouveau: Groupes développeurs QSEA Je ne peux en aucun cas être tenu pour responsable des conséquences de l'utilisation des codes que je fournis dans le cadre des réponses apportées sur les forums, même s'il s'avérait que ces codes sont erronés ou amènent à des dysfonctionnements, de manière manifeste ou non. |
|
|
|
|
|
#10 (permalink) |
|
Membre régulier
![]() Date d'inscription: juin 2004
Âge: 26
Messages: 120
|
Merci Pierre
En fait j'avais pas tilté que tu avais changé la syntaxe pour englober une date. J'ai donc utilisé cette syntaxe et la plus de probleme j'arrive enfin au resultat souhaité. Un grand merci a toi.
__________________
Amicalement Scons |
|
|
|
|
![]() |
![]() |
||
utilisation du sql et affichage des résultats dans un formulaire
|
||
| Outils de la discussion | |
|
|