|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Étudiant Inscription : mai 2011 Messages : 10 ![]() |
Bonjour à tous, je travaille actuellement sur un "programme"
Je dois dans un de mes menus ajouter des pièces (désignation, référence, ...) à la base. Pour permettre de copier coller des données, j'ai décidé de gérer tout cela par un sous formulaire, image de la table contenant les éléments. Bref, mon sous formulaire est donc piloté par le code suivant lors d'une pression sur un bouton "rafraichir" (je fais des tests) Code :
Ensuite, lorsque je j'ajoute des données dans mon sous formulaires, je vais ensuite consulter la table manuellement pour vérifier que cela a été pris en compte, et c'est le cas, donc pas de problème à ce niveau. Cependant, lors que j'appuie sur le bouton rafraichir, c'est comme si je n'avais rien écris, ce qui est très gênant. En gros, ma requête dont le code est plus haut ne semble pas marcher : les données entrées par le biais des sous formulaires sont invisibles aux yeux de ma requête.... alors qu'elles existent dans la table ! C'est d'autant plus troublant que lorsque je copie ma requête SQL (toute simple quand même !) dans l'outil de création de requête d'access, celle-ci fonctionne parfaitement ! Ma table n'est reliée à rien du tout (pour l'instant), sa seule spécificité est de contenir plus de 10 champs.. . J'ai eu beau relancer le logiciel, rien n'y fait, je ne comprends pas. C'est comme si il y avait quelque chose à rafraichir.. mais je pense pas que ce soit le sous formulaire vue que celui-ci se rafraichi avec ma requête, et de même lorsque je relance Access. Quelqu'un aurait il une idée pour me remettre à cheval? EDIT : C'est pire que ce que je pensais, même en modifiant manuellement dans la table, la requête a l'air de persister à ne vouloir m'afficher qu'une seule valeur
|
||
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé Sénior
![]() Pierre GONZALEZDéveloppeur Office VBA Inscription : août 2005 Messages : 3 412 ![]() |
Bonjour.
Je suppose que tu as vérifié que après action sur ta commande [Rafraîchir] le code de la procédure évènementielle est bien exécuté... Si oui, as-tu essayé Code :
PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon |
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Étudiant Inscription : mai 2011 Messages : 10 ![]() |
Affirmatif, étant donné que le tableau affiche à la base la table (table en source du sous formulaire dans propriétés)
Ce n'est qu'une fois le bouton rafraichir enclenché que la liste se réduit à un. J'ai essayé ta commande, je la connais déjà mais ça a toujours marché sans alors que pendant un moment je la mettais toujours. Le formulaire se rafraichit bien, le problème doit être ailleurs ![]() EDIT : j'avais pas capté que tu voulais que j'exécute la commande toute seule sans la requête, et effectivement ça marche bien, mais j'ai besoin de passer par une requête car je compte trier avec deux critères par la suite :s. EDIT2 : Ben non en fait même comme ça ça marche pas. Il ne voit toujours pas les modifications que j'ai effectué alors qu'elles sont bien dans la table. |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Étudiant Inscription : mai 2011 Messages : 10 ![]() |
Incompréhensible... ça semble fonctionner quand je lie le sous formulaire à une requête faite via Access avec la même commande SQL...
Je ne comprends vraiment pas pourquoi ça ne fonctionne pas en VBA et ça me gênerais vraiment de devoir procéder autrement, car tout est géré par code. :S |
|
|
00
|
|
|
#5 |
|
Expert Confirmé Sénior
![]() Pierre GONZALEZDéveloppeur Office VBA Inscription : août 2005 Messages : 3 412 ![]() |
RE,
Ton sous-formulaire est-il indépendant du formulaire? PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Étudiant Inscription : mai 2011 Messages : 10 ![]() |
Ben à priori oui, il apparaît comme formulaire indépendant dans la liste des formulaires.
Mais je confirme qu'il est "incrusté" dans un autre formulaire. Un sous formulaire quoi |
|
|
00
|
|
|
#7 |
|
Expert Confirmé Sénior
![]() Pierre GONZALEZDéveloppeur Office VBA Inscription : août 2005 Messages : 3 412 ![]() |
Hello.
La question est de savoir si tu as défini un lien père-fils entre le formulaire et le sous formulaire. PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon |
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Étudiant Inscription : mai 2011 Messages : 10 ![]() |
Ben je l'ai créé avec l'assistant donc à priori oui? :/. Puis si c'était pas le cas il n'afficherait rien avec le bouton rafraichir non?
Sinon comment être sur que ce lien est créé? |
|
|
00
|
|
|
#9 |
|
Expert Confirmé Sénior
![]() Pierre GONZALEZDéveloppeur Office VBA Inscription : août 2005 Messages : 3 412 ![]() |
Bonsoir.
En mode création, tu sélectionnes le conteneur du sous formulaire, conteneur qui devrait s'appeler "SsFrm_Ajout_Articles". Dans la fenêtre des propriétés, page "données", tu regardes s'il y a quelque chose sur les lignes "Champs pères" et "champs fils". PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Étudiant Inscription : mai 2011 Messages : 10 ![]() |
Bonjour, ces lignes sont en effet vides. A vrai dire je ne me suis jamais soucié de les remplir, cela a toujours fonctionné
Je n'utilise ce sous formulaire que pour afficher, et éventuellement modifier/ajouter EDIT : Quand je re-créé le sous formulaire, là les résultats sont mis à jours... Mais bon je vais pas m'amuser à le supprimer puis refaire à chaque fois x) |
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Étudiant Inscription : mai 2011 Messages : 10 ![]() |
Bon je comprends pas... je l'ai recréé une énième fois, et ça semble marcher à présent.. Vraiment étrange :s
C'est peut être parce que je lui avais mentionné la Tbl_Objets tout cour dans la source au départ, le fait d'envoyer par dessus la requête SQL lui fait croire que il n'y a rien à changer et garde donc la même chose sans rafraichir? EDIT : Bon j'en ai un qui marche et un qui marche plus. J'vais essayer de comparer, je vous tiens au courant. EDIT2 : Il semblerait qu'ils fallait mettre dans le sélecteur du formulaire principale la formule de la requête dans le champs Source... En tout cas maintenant ça marche, même quand je le ré-enlève. Est-ce un problème logiciel? Pourriez vous m'expliquer les subtilités qui ont pu causer ce désagrément ou me fournir un lien qui explique comment faire en VBA, car visiblement, le problème doit être entre la chaise et le clavier... |
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Étudiant Inscription : mai 2011 Messages : 10 ![]() |
Problème résolu pour le moment alors
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com