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 :

Formulaire de navigation [AC-2010]


Sujet :

Access

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2003
    Messages : 19
    Points : 7
    Points
    7
    Par défaut Formulaire de navigation
    Bonjour,
    Petit problème avec un formulaire de navigation.
    Mon formulaire de navigation contient plusieurs onglets avec divers formulaires et états.
    Je voudrais que depuis un bouton dans un des formulaires, un état compris dans le formulaire de navigation s'affiche.
    En résumé je voudrais que la sélection de l'onglet du formulaire de navigation puisse se faire directement en VBA et pas seulement en cliquant sur l'onglet.

    NB :setfocus met bien le focus sur l'onglet mais n'affiche pas le formulaire ou l'état associé.

    D'avance merci pour votre aide

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 064
    Points : 24 673
    Points
    24 673
    Par défaut
    Bonjour,

    Pour que l'onglet s'affiche il faut affecter la valeur de la page comme ceci.

    Va à la page 3.

    Personnellement j'utilise un Type enum pour remplacer les N° de page par des noms de variable. C'est plus clair pendant le dev et surtout ça évite de tout changer quand on insère ou supprime une page.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2003
    Messages : 19
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    J'ai essayé mais j'obtiens un message d'erreur "Impossible d'attribuer une valeur à cet objet"

    J'ai modifié le Me du nom du formulaire de navigation
    J'ai modifié le ct10 du nom de la barre de navigation
    Ce qui donne pour moi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [Form_Navigation].BarreNavig = 2
    Mais erreur.....

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 064
    Points : 24 673
    Points
    24 673
    Par défaut
    Citation Envoyé par hallucine Voir le message
    J'ai modifié le Me du nom du formulaire de navigation
    Pourquoi ? Ton code n'est pas dans le formulaire ou se trouve l'onglet ?

    Il s'agit bien d'un controle Onglet ?

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2003
    Messages : 19
    Points : 7
    Points
    7
    Par défaut
    Non, il ne s'agit pas d'un contrôle onglet...
    Il s'agit du formulaire de navigation.
    Il se trouve sous "Créer" puis "Formulaire" puis "Navigation"
    C'est un formulaire qui permet de parcourir les différents formulaires et états.

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 064
    Points : 24 673
    Points
    24 673
    Par défaut
    Faut que je regarde ça ce soir. Je n'ai pas 2010 sous la main actuellement.

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2003
    Messages : 19
    Points : 7
    Points
    7
    Par défaut
    D'avance merci d'y passer du temps.
    J'espère que tu trouveras le solution...

  8. #8
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 064
    Points : 24 673
    Points
    24 673
    Par défaut
    Pour l'instant la seule chose qui fonctionne c'est ceci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Me.ContrôleNavigation0.Tabs(1).SetFocus
    SendKeys "{Enter}"
    Je positionne le focus sur le bouton N°2 (tabs démarre à 0 comme la majorité des items) puis j'envoi un retour chariot dans le buffer clavier qui simule l'appuie sur la touche.

    Cette solution n'est pas très élégante mais en l'attente de mieux...

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2003
    Messages : 19
    Points : 7
    Points
    7
    Par défaut
    Désolé pour l'attente...

    Mais merci infiniment.. ça marche nikel !

  10. #10
    Membre habitué

    Homme Profil pro
    retraité
    Inscrit en
    Décembre 2014
    Messages
    373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Décembre 2014
    Messages : 373
    Points : 150
    Points
    150
    Billets dans le blog
    1
    Par défaut
    Bonjour Hallucine
    Je viens de créer un formulaire navigation avec onglets horizontaux et verticaux.
    Onglets horizontaux dénommés :1-2-3-4
    Onglets verticaux dénommés A-B-C-D
    Je voudrais, depuis un formulaire disons X, en le quittant, mettre en surbrillance l'onglet 1C.
    Pourrais-tu me fournir le code que tu utilises
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Me.ContrôleNavigation0.Tabs(1).SetFocus
    SendKeys "{Enter}"
    de Loufab, et comment tu l'emploies

  11. #11
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 274
    Points : 6 583
    Points
    6 583
    Par défaut
    Salut
    Pour naviguer dans un form de navigation, vous devez utiliser cette méthode.

  12. #12
    Membre habitué

    Homme Profil pro
    retraité
    Inscrit en
    Décembre 2014
    Messages
    373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Décembre 2014
    Messages : 373
    Points : 150
    Points
    150
    Billets dans le blog
    1
    Par défaut
    Bonjour Hyperion13
    J'ai essayé l'exemple donné dans le lien en le modifiant pour mon cas, mais j'ai tout faux. Je suis toujours aussi nul en vba de ce fait je patauge.
    Voici ce que j'ai fait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    DoCmd.BrowseTo ObjectType:=acBrowseToForm, _
    ObjectName:="F_Const_Tabl_Joueur", _
    PathToSubformControl:="6_Parti.NavigationSubform", _
    WhereCondition:="", _
    Page:="", _
    DataMode:=acFormEdit
    L'onglet de navigation horizontal correspond à 6_Parti, quant à l'onglet vertical qui ouvre le formulaire nommé F_Const_Tabl_Joueur
    Quand j'exécute le code les 6 lignes sont en jaune.
    Voici mon code en entier
    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
    Private Sub Valider_Click()
     
        If (DMax("[Pres_Dat]", "Adh_Pres_Jour", "[Pres_Dat]=date()")) Then
            MsgBox "La journée de ce jour est déjà enrgistrée", vbOKOnly, "Confirmation"
            DoCmd.GoToControl "Nul_F"
        Else
            DoCmd.OpenQuery "Ajout__Tbl_Adh_Pres_Jour", acViewNormal, acReadOnly
            DoCmd.OpenQuery "Ajout_Tbl_Cpte_Table", acViewNormal, acReadOnly
            DoCmd.OpenQuery "R1_AJ_Cotis_Pmt_Jour", acViewNormal, acEdit
            MsgBox "MAJ effectuée", vbOKOnly, "Confirmation"
            DoCmd.GoToControl "Nul_F"
        End If
     
    DoCmd.BrowseTo ObjectType:=acBrowseToForm, _
    ObjectName:="F_Const_Tabl_Joueur", _
    PathToSubformControl:="6_Parti.NavigationSubform", _
    WhereCondition:="", _
    Page:="", _
    DataMode:=acFormEdit
     
     
    End Sub
    Tout ce qui se trouve avant End If fonctionne très bien.
    Quelle est la partie de code manquante où mal interprété ?
    Cordialement

  13. #13
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 274
    Points : 6 583
    Points
    6 583
    Par défaut
    re,
    où frm_navigation est le form principal, SousFormulaireNavigation est le nom que Microsoft utilise pour la collection de formulaires sur les différents onglets du contrôle de navigation et F_Const_Tabl_Joueur le form à afficher.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.BrowseTo acBrowseToForm, "F_Const_Tabl_Joueur", "frm_navigation.SousFormulaireNavigation"

  14. #14
    Membre habitué

    Homme Profil pro
    retraité
    Inscrit en
    Décembre 2014
    Messages
    373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Décembre 2014
    Messages : 373
    Points : 150
    Points
    150
    Billets dans le blog
    1
    Par défaut
    Bonjour Hyperion13
    Après adaptation, tout fonctionne à merveille.
    Comment dois-je modifier cette ligne pour ne voir que l'onglet souhaité en surbrillance.
    Je te remercie pour ta patience.
    Cordialement

  15. #15
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 274
    Points : 6 583
    Points
    6 583
    Par défaut
    re
    quel code ?
    ce code met en surbrillance le btn de navigation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.BrowseTo acBrowseToForm, "F_Const_Tabl_Joueur", "frm_navigation.SousFormulaireNavigation"
    sinon s'il faut vraiment
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Forms("frm_Navigation").Controls("ContrôleNavigation1").Controls("BoutonNavigation11").SetFocus
    SendKeys "{Enter}"

  16. #16
    Membre habitué

    Homme Profil pro
    retraité
    Inscrit en
    Décembre 2014
    Messages
    373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Décembre 2014
    Messages : 373
    Points : 150
    Points
    150
    Billets dans le blog
    1
    Par défaut
    Bonjour Hyperion13
    Le premier code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.BrowseTo acBrowseToForm, "F_Const_Tabl_Joueur", "Formulaire de navigation.SousFormulaireNavigation"
    ne met pas en surbrillance le volet désiré en l'occurence F_Const_Tabl_Joueur, mais ouvre en grand format le formulaire F_Const_Tabl_Joueur.
    Quant au second code (le dernier)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Forms("frm_Navigation").Controls("ContrôleNavigation1").Controls("BoutonNavigation11").SetFocus
    SendKeys "{Enter}"
    Je ne trouve pas de "ContrôleNavigationX" dans mon formulaire "Formulaire de Nagigation".
    Les volets horizontaux porte les noms de : BoutonNavigation7 - BoutonNavigation9 - BoutonNavigation11 - BoutonNavigation13 et BoutonNavigation15, pour les volets 1-2-3-4-5
    Pour le volet horizontal n° 4 (BoutonNavigation13) le nom des 3 volets verticaux sont : A = BoutonNavigation7 - B = BoutonNavigation9 - C = BoutonNavigation11
    Pour le volet horizontal n° 5 (BoutonNavigation15) le nom des 3 volets verticaux sont : A = Bt_Pres - B = Bt_Tbl - C = Bt_PO. C'est cette ligne sur laquelle je voudrais travailler.
    J'ai remplacé ton code par le suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Forms("Formulaire de navigation").Controls("BoutonNavigation15").Controls("Bt_Tbl").SetFocus
    SendKeys "{Enter}"
    Il ne fonctionne pas et met les 2 lignes en jaune.
    D'où vient "ContrôleNavigationX"
    Cordialement

  17. #17
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 274
    Points : 6 583
    Points
    6 583
    Par défaut
    re,
    ContrôleNavigation? est le nom que Microsoft utilise pour la collection de BoutonNavigation?? horizontaux et/ou verticaux
    Je ne sais pas ce que vous entendez par "ne met en surbrillance le volet désiré ...", mais chaque bouton de navigation plan vertical et/ou horizon est en surbrillance dès lors que l'on clique dessus pour charger le form qu'il contient.
    Qu'on utilise DoCmd.BrowseTo ou SetFocus/SendKeys, le bouton de navigation passe en surbrillance. Où alors un truc m'échappe.
    Images attachées Images attachées  

  18. #18
    Membre habitué

    Homme Profil pro
    retraité
    Inscrit en
    Décembre 2014
    Messages
    373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Décembre 2014
    Messages : 373
    Points : 150
    Points
    150
    Billets dans le blog
    1
    Par défaut
    Re Hyperion13
    Je te joins 3 photos :
    La première est le formulaire initial avec les volets 5A en surbrillance.Nom : Belote1.jpg
Affichages : 133
Taille : 94,8 Ko
    Lorsque je clique sur Valider où se trouve le code, c'est la Photo n° 2 qui devrait apparaitreNom : Belote2.jpg
Affichages : 131
Taille : 79,7 Ko
    , mais c'est la photo n° 3 qui apparait après l'utilisation du code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.BrowseTo acBrowseToForm, "F_Const_Tabl_Joueur", "Formulaire de navigation.SousFormulaireNavigation"
    Nom : Belote3.jpg
Affichages : 133
Taille : 73,3 Ko
    La 3ème photo représente l'ouverture complète du formulaire F_Const_Tabl
    Pour ce qui est du deuxième code je ne peux pas l'utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Forms("Formulaire de navigation").Controls("BoutonNavigation15").Controls("Bt_Tbl").SetFocus
    SendKeys "{Enter}"
    Je sais que le fait de cliquer sur le boutonNavigation le met en surbrillance, et ouvre le sousFourmulairNavigation qui lui est dédié.
    Je ne sais pas comment t'expliquer, mais c'est le résultat de la photo n° 2 que je souhaiterais obtenir.
    Si tu veux je peux te mettre les même photos en mode création.
    Cordialement

  19. #19
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 274
    Points : 6 583
    Points
    6 583
    Par défaut
    re,
    vous indiquez dans votre Post#10 que :
    Citation Envoyé par lmc71 Voir le message
    ... Je viens de créer un formulaire navigation avec onglets horizontaux et verticaux.
    Onglets horizontaux dénommés :1-2-3-4
    Onglets verticaux dénommés A-B-C-D ...
    Sauf que si on observe la 1ère img Post#18, ce n'est pas ça du tout ! Vous avez créé un form de navigation avec des onglets horizontaux dans lequel vous avez inséré un autre form de navigation avec des onglets verticaux ! Sinon, la configuration serait comme l'img1 ci-dessous !
    Dans votre cas img2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.BrowseTo acBrowseToForm, "frm_v2", "frm_h_nav.SousFormulaireNavigation>frm_v_nav.SousFormulaireNavigation"
    Images attachées Images attachées   

  20. #20
    Membre habitué

    Homme Profil pro
    retraité
    Inscrit en
    Décembre 2014
    Messages
    373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Décembre 2014
    Messages : 373
    Points : 150
    Points
    150
    Billets dans le blog
    1
    Par défaut
    Bonjour Hyperion13
    J'ai écrit une erreur en disant onglet horizontaux 1-2-3-4 et A-B-C-D c'était pour donner une image mais le formulaire de navigation principale a été construit en une seule fois de la façon suivante.
    J'ai construit les sous formulaireNatigation verticaux avec les noms suivants :
    1 = formulaire 1_Adh qui inclut trois formulaires : F_Adh - F_Adh_Depart et F_Adh_Supp ce n° 1 représente l'onglet Adhérent
    2 = formulaire 2_Bureau qui inclut deux formulaires : F_Bureau et F_Bur_Depat ce n° 2 représente l'onglet Bureau
    3 = formulaire 3_Monetaires qui inclut deux formulaires : F_Recettes et F_Depense ce n° 3 représente l'onglet Monétaire
    4 = formulaire 4_Cotisation qui inclut trois formulaires : F_Cotis_Nvx - F_Cotis_Mod et F_Cotis_Paimnt ce n° 4 représente l'onglet Cotisation
    5 = formulaire 6_Parti qui inclut trois formulaires : F_Adh_Pres_Jour - F_Const_Tabl_Joueur et F_P_Joueur ce n° 5 représente l'onglet Partie à jouer. C'est cette ligne qui nous intéresse.
    De ces 5 formulaire j'ai constitué le volet de navigation horizontal en plaçant ces 5 formulaires les uns après les autres 1_Adh - 2_Bureau - 3_Monetaires - 4_Cotisation et 6_Parti.
    Je n'ai fait aucun ajout.
    Cordialement

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [AC-2010] Formulaire simple navigation avec boutons
    Par docjo dans le forum IHM
    Réponses: 9
    Dernier message: 04/05/2019, 12h21
  2. [AC-2010] Pb identifiant dans des formulaires de navigation
    Par Cic-ec dans le forum IHM
    Réponses: 3
    Dernier message: 11/05/2011, 09h09
  3. [AC-2010] Formulaire de navigation + Formulaire double affichage
    Par claire_arts dans le forum IHM
    Réponses: 4
    Dernier message: 18/04/2011, 09h54
  4. [AC-2010] Sous formulaire de navigation
    Par docjo dans le forum IHM
    Réponses: 3
    Dernier message: 12/03/2011, 20h00
  5. [AC-2007] Clause WHERE dans macro et sous-formulaire de navigation
    Par ultima67 dans le forum IHM
    Réponses: 1
    Dernier message: 10/03/2011, 07h42

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