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

Access Discussion :

[Onglet] Comment faire référence à un sous-formulaire placé dans un onglet ?


Sujet :

Access

  1. #1
    Membre averti Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Points : 395
    Points
    395
    Par défaut [Onglet] Comment faire référence à un sous-formulaire placé dans un onglet ?
    Bonjour,

    C'est peut être une question stupide mais :

    Comment puis-je faire référence à un sous-formulaire placé dans un onglet ???

    J'ai vu dans la FAQ à ce lien : http://access.developpez.com/faq/?pa...#SelPageOnglet
    comment on peut sélectionner une page d'un onglet en VBA mais cela ne m'aide pas beacoup ...

    Si vous avez des idée ... elles seront les bienvenues.


    Merci ...
    ... Je me méfie de l'irrespect mais je revendique le droit à la frénésie ...

  2. #2
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 898
    Points : 4 787
    Points
    4 787
    Par défaut
    Salut,
    En ce qui concerne le référencement, un ss-frm dans un onglet est un ss-frm fans le frm !

    Sinon pour afficher "industiellement " les différentes pages d'un onglet je suis fait ce petit Sub
    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
    24
     
     
    Public Sub activerOnglet(nomCtlTab As Object, _
                             noPageActive As Long )
     
     
    Dim Num As Integer
     
    'Exemple : nomCtlTab controle avec 3 ongletS : 
        'Onglet 0 :    General
        'Onglet 1 :    No...
        'Onglet 2 :    Play-back
     
     
    nomCtlTab.Style = 2    ' 0:onglets visibles    2:cachés
     
        For Num = 0 To 2
            If Num = noPageActive Then
                nomCtlTab.Pages(Num).Visible = True
                nomCtlTab.Pages(Num).SetFocus
            End If
        Next
     
    End Sub
    que j'apelle ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     activerOnglet Me!CtlTab1, 1
    Espère que ça puisse t'aider
    "Always look at the bright side of life." Monty Python.

  3. #3
    Membre averti Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Points : 395
    Points
    395
    Par défaut
    Merci pour ta réponse ...

    Juste une petite question :


    Je me trouve dans mon formulaire, je suis dans le champ : numero_of, je presse la touche tabulation et j'aimerais que mon "focus" se positionne dans un champ de mon sous-formulaire qui est dans un onglet, voici le code que j'ai utilisé pour cela :

    Sur "Perte Focus" du champ : numero_of

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms(str_NomFormulaire).Form(str_NomSousFormulaireAlliageOf)![fk_alliage_of].SetFocus
    la variable str_NomFormulaire contient le nom du formulaire principal
    la variable str_NomSousFormulaireAlliageOf continent le nom du sous-formulaire. (qui se trouve dans l'onglet N°0)

    Lorsque j'essaie, cela ne fonctionne pas. Mon focus ne se positionne pas dans mon sous-formulaire qui est dans mon onglet. Que puis-je faire pour que mon focus se positionne juste ???

    Je tiens à préciser que mon focus se place sur l'onglet n°0 à la place de mon champ : fk_alliage_of ... ....

    Merci pour vos réponses ... et à tout bientôt ...
    ... Je me méfie de l'irrespect mais je revendique le droit à la frénésie ...

  4. #4
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 898
    Points : 4 787
    Points
    4 787
    Par défaut
    Et alors as-tu fait le test :
    si tu demandes l' activation de l'anglet avant de mettre le focus sur le chp du ss-frm ?
    "Always look at the bright side of life." Monty Python.

  5. #5
    Membre actif
    Avatar de Trini
    Homme Profil pro
    Dresseur de puce
    Inscrit en
    Juillet 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dresseur de puce

    Informations forums :
    Inscription : Juillet 2005
    Messages : 189
    Points : 264
    Points
    264
    Par défaut
    Bonjour,

    En fait y faut donner d'abrod le focus sur le contrôle du sous-formulaire, puis sur le contrôle situé dans le sous-formulaire.
    Dans ton cas je ne connais pas le nom du contrôle de ton sous-frm mais ça peut donner un truc comme :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    Forms(str_NomFormulaire)![NomDuControleContenantLeSF].SetFocus
    Forms(str_NomFormulaire)![NomDuControleContenantLeSF].Form![fk_alliage_of].SetFocus

  6. #6
    Membre averti Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Points : 395
    Points
    395
    Par défaut
    Ouais ça fonction !!!!

    Grace à ces lignes ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Me.onglet_of.SetFocus
    Forms(str_NomFormulaire).Form(str_NomSousFormulaireAlliageOf)![fk_alliage_of].SetFocus
    qui m'ont été inspirées de la solution de
    ### Trini ###

    Un grand merci ...
    ... Je me méfie de l'irrespect mais je revendique le droit à la frénésie ...

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/09/2009, 13h57
  2. Impossible de faire référence à un sous formulaire.
    Par sebinator dans le forum VBA Access
    Réponses: 3
    Dernier message: 01/04/2008, 22h10
  3. Réponses: 5
    Dernier message: 03/08/2006, 16h56
  4. Comment faire référence à un sous sous dossier ?
    Par Angeldu74 dans le forum Langage
    Réponses: 3
    Dernier message: 06/04/2006, 23h22
  5. Faire référence à un sous-formulaire
    Par Farbin dans le forum Access
    Réponses: 3
    Dernier message: 27/10/2005, 00h32

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