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

IHM Discussion :

atteindre controle sous formulaire


Sujet :

IHM

  1. #1
    Membre habitué Avatar de Daniel MOREAU
    Inscrit en
    Décembre 2004
    Messages
    372
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 372
    Points : 142
    Points
    142
    Par défaut atteindre controle sous formulaire
    Bonsoir,

    Voilà je ne comprend pas pourquoi le code suivant :
    fonctionne correctement lorsque aucune donnée n'est saisie
    fonctionne lorsque une saisie est effectuée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub CP_GotFocus()
    Dim VerifListe As String
    
    VerifListe = Nz(DLookup("[CP]", "Tbl_Villes"), 0)
    If VerifListe <> 0 Then
    Me.Frm_Villes.Form.Visible = False
    Else
    Me.Frm_Villes.Form.Visible = True
    Me.Frm_Villes.SetFocus
    Me.[Frm_Villes].Form![CP].SetFocus
    
    End If
    
    end sub
    j'ai le message : Impossible d'activer le contrôle Frm_Villes !!!

    Merci pour votre aide

    daniel

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 350
    Points : 1 701
    Points
    1 701
    Par défaut
    Bonsoir,

    Citation Envoyé par Daniel MOREAU Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Me.Frm_Villes.Form.Visible = True
    Me.Frm_Villes.SetFocus
    Me.[Frm_Villes].Form![CP].SetFocus
    Pourquoi Me.Frm_Villes et Me.[Frm_Villes]?

    Pourquoi Me.Frm_Villes.Form.... et Me.Frm_Villes.....?

    Cordialement.

    Ps :fonctionne correctement lorsque aucune donnée n'est saisie
    fonctionne lorsque une saisie est effectuée-->Donc : C'est toujours OK!
    Questions techniques par MP
    Le peu que je sais, c'est à mon ignorance que je le dois.
    ...............................................................................Sacha Guitry

  3. #3
    Membre habitué Avatar de Daniel MOREAU
    Inscrit en
    Décembre 2004
    Messages
    372
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 372
    Points : 142
    Points
    142
    Par défaut
    Bonsoir,

    Je reviens vers vous car je n'arrive toujours pas à donner le focus au champ CP de mon sous formulaire "Frm_Villes"



    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
    Private Sub CP_GotFocus()
    Dim VerifListe As String
    
    VerifListe = Nz(DLookup("[CP]", "Tbl_Villes"), 0)
    If VerifListe = 0 Then
    Forms![Frm_Salaries]![Frm_Villes].Form.Visible = True
    Forms![Frm_Salaries]![Frm_Villes]![CP].SetFocus
    Forms![Frm_Salaries]![Frm_Villes].Form![Btn_FermeFrm].Visible = False
    
    Else
    Forms![Frm_Salaries]![Frm_Villes].Form.Visible = False
    
    End If
    
    End Sub
    Quelqu'un a-t-il une explication ?


    Merci d'avance.

    Daniel

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 350
    Points : 1 701
    Points
    1 701
    Par défaut
    Bonsoir,
    En tous les cas il semble que tous ces appels sont faits depuis le form "au sommet".
    Donc il est inutile d'appeler--> "Forms![Frm_Salaries]"
    Un simple Me!Frm_Villes.Form![CP] doit faire l'affaire.

    Cordialement.

    Ps : Après essai-->Ceci est OK
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Me.[Frm_Villes].Visible = True
    Me.Frm_Villes].SetFocus
    Me.Frm_Villes]![CP].SetFocus
    Questions techniques par MP
    Le peu que je sais, c'est à mon ignorance que je le dois.
    ...............................................................................Sacha Guitry

  5. #5
    Membre habitué Avatar de Daniel MOREAU
    Inscrit en
    Décembre 2004
    Messages
    372
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 372
    Points : 142
    Points
    142
    Par défaut
    bonsoir francishop,

    Merci pour ta réponse,

    J'avais bien noté ta remarque, mais avec la multitude d'essai que je viens d'effectuer, je finis par me mélanger les pinceaux.

    Néanmoins ça ne fonctionne tjrs pas lorsque je saisi dans mon formulaire principal.
    (Ce qui me surprend c'est que lorsque le formulaire principal est vierge le champ "CP" de mon sousformulaire recoit bien le focus.)

    J'ai recherché dans les forums, mais je n'ai rien trouvé.

    J'ai essayé avec docmd gotocontrol (même message), également avec screen activecontrol.

    As tu une idée ?

    Merci encore

    Daniel

  6. #6
    Membre habitué Avatar de Daniel MOREAU
    Inscrit en
    Décembre 2004
    Messages
    372
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 372
    Points : 142
    Points
    142
    Par défaut
    re,

    Pour info francishop,

    j'ai testé avec ton code mais j'ai bien le même message d'erreur.

    @+

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 350
    Points : 1 701
    Points
    1 701
    Par défaut
    Bonsoir,

    Envoie ton formulaire avec le minimum d'accessoires. C'est anormal. Il doit y avoir autre chose.

    Cordialement.
    Questions techniques par MP
    Le peu que je sais, c'est à mon ignorance que je le dois.
    ...............................................................................Sacha Guitry

  8. #8
    Faw
    Faw est déconnecté
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    1 169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 169
    Points : 1 383
    Points
    1 383
    Par défaut
    salut,
    Daniel, tu es sûr que ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms![Frm_Salaries]![Frm_Villes].form![CP].SetFocus
    ne fonctionne pas?
    Je ne comprends rien à Access...Mais je me soigne.
    Moteur de recherche
    DAO

  9. #9
    Membre habitué Avatar de Daniel MOREAU
    Inscrit en
    Décembre 2004
    Messages
    372
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 372
    Points : 142
    Points
    142
    Par défaut
    bonjour,

    pour répondre à faw, j'ai essayé également avec le code de francishop

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Me.[Frm_Villes].Visible = True
    Me.Frm_Villes].SetFocus
    Me.Frm_Villes]![CP].SetFocus
    et j'ai le même message "Impossible d'activer le controle 'frm_ville'" dès que je saisie une donnée dans mon formulaire principal.

    Par contre le code fonctionne quand le formulaire reste vierge de toute saisie.

    Je vous joins ma bdd comme me l'a proposé francishop

    Merci pour votre aide

    Daniel
    Fichiers attachés Fichiers attachés
    • Type de fichier : zip Bdd.zip (161,1 Ko, 79 affichages)

  10. #10
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 350
    Points : 1 701
    Points
    1 701
    Par défaut
    Bonjour,

    Dans Tbl_Salaries-->CP-->Null interdit-->Non

    C'est avant mise à jour de ton formulaire qu'il faut vérifier la contenance des champs.

    Cordialement.
    Questions techniques par MP
    Le peu que je sais, c'est à mon ignorance que je le dois.
    ...............................................................................Sacha Guitry

  11. #11
    Faw
    Faw est déconnecté
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    1 169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 169
    Points : 1 383
    Points
    1 383
    Par défaut
    RE,
    J'ai bien compris? Frm_Villes sert à la fois de formulaire ET de sous-formulaire .
    En plus si tu atteint le contrôle d'un sous-form, tu n'as pas besoin de donner le
    focus au sous-form avant...il le reçois en même temps que son contrôle. c'est
    déjà une ligne d'erreur en moins.

    Tu peux essayer avec SelStart au lieu de SetFocus, ça atteint bien [CP].
    Cela dit, je n'ai pas tout compris: Pourquoi un sous-form caché puisque tu t'en
    sert en tant que formulaire (le bouton à trois points devant CP du form parent)?
    Je ne comprends rien à Access...Mais je me soigne.
    Moteur de recherche
    DAO

Discussions similaires

  1. [AC-2007] Effacer valeur controle sous formulaire sur sortie
    Par meldja dans le forum VBA Access
    Réponses: 3
    Dernier message: 21/07/2013, 11h13
  2. Réponses: 4
    Dernier message: 01/02/2007, 11h17
  3. Réponses: 6
    Dernier message: 14/10/2006, 16h22
  4. Réponses: 7
    Dernier message: 21/07/2006, 08h56
  5. Ouvrir un Formulaire dans un control sous-Formulaire
    Par Berny03 dans le forum Access
    Réponses: 2
    Dernier message: 27/09/2005, 12h22

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