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 :

MAJ d'un sous formulaire


Sujet :

VBA Access

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 10
    Points : 5
    Points
    5
    Par défaut MAJ d'un sous formulaire
    Bonjour à tous, je suis débutant, je précise.

    Je cherche depuis plusieurs jours, un peu partout d'ou vient le probleme dans mon code VBA.
    Mon cheminement est le suivant:
    * A chaque enregistrement je copie les données dans une table "T_Commandes"
    * Ensuite je supprime la Table sur laquelle est basée mon sous formulaire, pour la remplir de nouveau avec les nouvelles données (sans les données copiées sur la table "T_commandes".
    * Et enfin j'essaye de mettre à jour les enregistrements de mon formulaire/sous formulaire et la paf , erreur, il me dit qu'il n y a pas d'enregistrement.
    Si je fais afficher tous les enregistrements tout redevient nickel.

    Voici le code que j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Private Sub Commande61_Click()
        'sauvegarde dans T_commandes_stables_a_valider
        DoCmd.RunCommand acCmdSaveRecord
     
        'exectute la RQ ajout dans T_commandes
        Dim db As DAO.Database
        Dim ess As DAO.Recordset
        Dim rqMaQuery As QueryDef
        Dim i As Integer
     
        Set db = CurrentDb
        Set rqMaQuery = db.QueryDefs("A_RQ_Commandes") 'Nom de ta requête ajout
        rqMaQuery.Execute
     
        'Maj Sous formulaire
        CurrentDb.Execute "DELETE * FROM [T_Commandes_stables_a_valider];"
        Set rqMaQuery = db.QueryDefs("A_Commandes_stables_a_valider") 'Nom de ta requête ajout
        rqMaQuery.Execute
     
        'raffraichi le formulaire
        Forms("F_Commandes_stables_a_valider").Controls("FS_Commandes_stables_a_valider").Form.Requery
     
    End Sub
    Merci pour votre aide

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Pour info, lors de la manipulation la liste déroulante dont je me sert dans le formulaire "pere" pour alimenter le sous formulaire prend la valeur "Supprimé" , je ne sais pas si cela peut aider.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Bon j'ai mis à la fin de mon code ceci

    Chuis pas sur que cela soit top, mais en attendant je peux continué à avancer, si vous avez plus propre je suis preneur

  4. #4
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 43
    Points : 51
    Points
    51
    Par défaut
    Salut,

    Je pense que ta méthode ne soit pas la bonne. Tu n'as pas besoin d'une nouvelle table pour meubler ta SsForm.
    Essaie ça dans les Properties de ta SsForm:
    Dans le Link Master Fields, mets la key de la table principale.
    Dans le Link Child Fields, mets la key de la table secondaire qui est liée à l'autre.
    Puis dans l'Event 'After Update' du champs de sélection de ta principale Form
    Bon courage

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Bonjour et merci pour ta réponse mais cela ne fonctionne pas.
    J'avais deja mis mon formulaire / sous formulaire en Pere/fils.
    Mon sous formulaire est bien meublé à la premiere ouverture, apres le cheminement est le suivant.
    *Je renseigne un champ
    *Je valide l'enregistrement
    * Je met à jour une autre table avec ce nouveau champ renseigné
    *Je supprime la table sur laquelle s appuie mon sous formulaire
    *Je re créer cette meme table avec la mise à jour des champs (en faite le champ renseigné auparavant n'apparait plus)
    *Et c'est la que mon sous formulaire devient vide et que le champs pere du formulaire me met une erreur "supprimé"

Discussions similaires

  1. [AC-2003] MAJ d'un sous formulaire
    Par LePereNoel dans le forum IHM
    Réponses: 1
    Dernier message: 22/06/2010, 15h35
  2. maj d'un sous-formulaire bloquée
    Par nweim dans le forum Access
    Réponses: 9
    Dernier message: 16/01/2007, 13h54
  3. maj d'un sous formulaire par une zone de liste
    Par mnssylvain dans le forum IHM
    Réponses: 3
    Dernier message: 31/08/2006, 22h46
  4. MAJ de plusieurs sous formulaire
    Par louroulou dans le forum Access
    Réponses: 4
    Dernier message: 23/06/2006, 09h37
  5. MAJ d'1 sous formulaire
    Par cyrille.blanchard dans le forum Access
    Réponses: 3
    Dernier message: 02/04/2006, 09h26

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