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 :

[A-03]enregistrement d'un sous formulaire qui doit changer automatiquement


Sujet :

VBA Access

  1. #1
    Membre régulier
    Inscrit en
    Mars 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2008
    Messages : 112
    Points : 112
    Points
    112
    Par défaut [A-03]enregistrement d'un sous formulaire qui doit changer automatiquement
    Bonjour, j'ai un petit problème de lien entre le formulaire principale et le sous formulaire.

    J'ai un subform contenant des champs d'une table Client.
    Celui-ci se trouve sur un mainform où est placé une textbox qui correspond au numéro d'un client.

    Mon but est que la textbox du mainform corresponde au numéro du client dans le subform (que les enregistrements dans le subform se changent suivant le numéro du textbox du mainform).

    J'arrive avec le code suivant à aller au numéro d'enregistrement du subform correspondant au numéro de la textbox du mainform :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Dim X
    Set X = Me.TBNum 'valeur de la textbox du mainform
    Me.SubFormClient.Form.Recordset.MoveFirst 
    Me.SubFormClient.Form.Recordset.MovePrevious 'déplace le subform à l'enregistrement BOF
    Me.SubFormClient.Form.Recordset.Move X 'déplace le subform à l'enregistrement correspondant au textbox du mainform
    Hors cette idée est bien simpliste.. le problème étant que le numéro du client ne change pas parallèlement au numéro d'enregistrement du formulaire, il suffit qu'on efface un client pour que tout soit décalé.

    Donc je ne sais pas comment faire pour aller à l'enregistrement du subform où le numéro du client correspond au numéro du textbox du mainfrom.

    Je pense qu'il faut peut être un code du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Set X = Me.TBNum
    Me.SubFormClient.Form.Recordset.MoveFirst
    Me.SubFormClient.Form.Recordset.FindFirst "Forms![Form_new_clt]![SubFormClient].Form![NumClient] = X" 
    While Not Me.SubFormClient.Form.Recordset.NoMatch
    Me.SubFormClient.Form.Recordset.MoveNext
    Wend
    Mais bon je débute et ce genre de code "fait maison" j'ai essayé ça ne marche pas.


    Je suis également allé dans les propriétés du Subform et j'ai mis la textbox du mainform comme champs père et la textbox du subform comme champs fils, mais au démarrage du formulaire un msgbox s'ouvre me demandant d'entrer le numéro du numclient donc c'est pas bon non plus.

    Voilà j'attends des critiques sur ce que j'ai essayé de faire et surtout si vous avez une solution à mon problème n'hésitez pas, merci beaucoup.

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Plutot filtrer le sous formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Me.SubFormClient.Form.Filter = "[NumClient]=" & Me!TBNum
    Me.SubFormClient.Form.FilterOn = True

  3. #3
    Membre régulier
    Inscrit en
    Mars 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2008
    Messages : 112
    Points : 112
    Points
    112
    Par défaut
    Bonjour, merci pour ta réponse.

    J'ai essayé d'appliquer le filtre à partir d'un click sur un bouton du formulaire principal, un msgbox apparait me demandant de rentrer le NumClient, mais quant je rentre le numéro voulu, le sous formulaire reste à l'enregistrement numéro 1, c'est la même chose que lorsqu'il s'agissait de mettre un champ père et un champs fils.

Discussions similaires

  1. Réponses: 2
    Dernier message: 15/10/2009, 22h17
  2. Réponses: 2
    Dernier message: 09/01/2009, 09h21
  3. Réponses: 2
    Dernier message: 17/08/2007, 09h54
  4. Limiter nombre d'enregistrement d'un sous-formulaire
    Par snoopy69 dans le forum Access
    Réponses: 12
    Dernier message: 26/10/2005, 17h03
  5. Réponses: 4
    Dernier message: 16/09/2005, 15h56

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