IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Requète de sous formulaire ne prend pas en compte les changements [AC-2000]


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 24
    Points : 21
    Points
    21
    Par défaut Requète de sous formulaire ne prend pas en compte les changements
    Bonjour à tous, je travaille actuellement sur un "programme" en VBA via Access.

    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub rafraichir_Click()
        Dim strObjets As String
        strObjets = "SELECT * FROM Tbl_Objets"
     
        Me![SsFrm_Ajout_Articles].Form.RecordSource = strObjets
     
    End Sub
    Au début tout va bien, il m'affiche bien ma table, vue que je l'ai mise comme source dans les propriétés du formulaire.

    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 dans le sous formulaire... Tout à l'heure j'avais réussi à en mettre trois, mais j'y arrive plus

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub rafraichir_Click()
    Me.SsFrm_Ajout_Articles.Requery
    End Sub
    Cdlt,

    PGZ

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    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.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    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

  5. #5
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    RE,

    Ton sous-formulaire est-il indépendant du formulaire?

    PGZ

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    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

  7. #7
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Hello.

    La question est de savoir si tu as défini un lien père-fils entre le formulaire et le sous formulaire.

    PGZ

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    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éé?

  9. #9
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    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

  10. #10
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    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)

  11. #11
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    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...

  12. #12
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 24
    Points : 21
    Points
    21
    Par défaut
    Problème résolu pour le moment alors Merci beaucoup pour ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 11/11/2010, 17h54
  2. Réponses: 1
    Dernier message: 28/05/2008, 16h11
  3. Réponses: 2
    Dernier message: 29/03/2008, 13h04
  4. Requete Update ne prend pas en compte les champs paramétrés?
    Par Oceliane dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 08/06/2007, 22h34
  5. Réponses: 1
    Dernier message: 13/02/2007, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo