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 :

données du formulaire non-modifiables


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut données du formulaire non-modifiables
    Salut a tous !

    Voici mon problème: Sur mon formulaire, j'ai 3 cases a cocher(oui, non, re-ouvrir). J'ai fait ajouter un code dans VBA pour la case ''oui''. Si l'utilisateur clique sur la case ''oui''. les informations dans le formulaire seront grises, donc il n'a pas besoin de rajouter de l'information. Pour les cases ''non'' et ''re-ouvrir'', c'est dans le cas ou il faut ajouter de l'information.
    Ce qui se passe, c'est qu'En cliquant sur la case ''oui'', ca va griser tous les enregistrements au lieu de griser un enregistrement spécifié. Par exemple, après avoir coché ''oui'' sur la case pour le 1er enregistrement, on voit que kle second enregistrement est gris aussi.
    Comment faire en sorte que quand on fait ce choix (cocher ''oui'') pour que un enregistrement le soit et non pas tous. Ma table contient 600 enregistrements et je ne veux pas qu'ils soient tous gris.

    Voici mon code:

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    Private Sub Frame116_AfterUpdate()
    Select Case Frame116
    Case 2, 3
        Comments.Enabled = True
        RecommendedAction.Enabled = True
        FailureDescription.Enabled = True
        Type_of_failure.Enabled = True
        Failure_Category.Enabled = True
        Application_failure.Enabled = True
        cboCity.Enabled = True
        cboCountry.Enabled = True
        Source_of_info.Enabled = True
        cmdCal.Enabled = True
        Text2.Enabled = True
        FailureID.Enabled = True
        AffectedED.Enabled = True
        Directorate.Enabled = True
        ContactPerson.Enabled = True
        CR.Enabled = True
        codes.Enabled = True
        FLO_Alert.Enabled = True
        EDAS_ID.Enabled = True
        EventDayID.Enabled = True
     
        Case 1
        Comments.Enabled = False
        RecommendedAction.Enabled = False
        FailureDescription.Enabled = False
        Type_of_failure.Enabled = False
        Failure_Category.Enabled = False
        Application_failure.Enabled = False
        cboCity.Enabled = False
        cboCountry.Enabled = False
        Source_of_info.Enabled = False
        cmdCal.Enabled = False
        Text2.Enabled = False
        FailureID.Enabled = False
        AffectedED.Enabled = False
        Directorate.Enabled = False
        ContactPerson.Enabled = False
        CR.Enabled = False
        codes.Enabled = False
        FLO_Alert.Enabled = False
        EDAS_ID.Enabled = False
        EventDayID.Enabled = False
    End Select
    End Sub
    Les cases 1,2,3 correspondent a oui, non, re-ouvrir et font partie d'un groupe d'options.

    Merci

    vautour29

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Points : 2 368
    Points
    2 368
    Par défaut
    Bonjour,

    Si le contrôle Groupe d'options (frame116) qui contient les cases à cocher est dépendant d'un champ (en clair, la propriété Source contrôle est renseignée avec un nom de champ), alors tu peux utiliser le formatage conditionnel, disponible depuis Access 2000.

    Sur Developpez.com, tu trouveras un tutoriel. Et ce sujet a souvent été traité sur le forum Access.

    -=-=-=-=-=-=-=-

    Sans rapport avec ta question, je me permets une remarque sur le code que tu nous as présenté...
    Tu pourrais l'abréger comme ceci...
    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
    25
    26
    Private Sub Frame116_AfterUpdate()
        Dim bActif As Boolean
     
        bActif = (Frame116.Value > 1)
     
        Comments.Enabled = bActif 
        RecommendedAction.Enabled = bActif 
        FailureDescription.Enabled = bActif 
        Type_of_failure.Enabled = bActif 
        Failure_Category.Enabled = bActif 
        Application_failure.Enabled = bActif 
        cboCity.Enabled = bActif 
        cboCountry.Enabled = bActif 
        Source_of_info.Enabled = bActif 
        cmdCal.Enabled = bActif 
        Text2.Enabled = bActif 
        FailureID.Enabled = bActif 
        AffectedED.Enabled = bActif 
        Directorate.Enabled = bActif 
        ContactPerson.Enabled = bActif 
        CR.Enabled = bActif 
        codes.Enabled = bActif 
        FLO_Alert.Enabled = bActif 
        EDAS_ID.Enabled = bActif 
        EventDayID.Enabled = bActif 
    End Sub

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 91
    Points : 92
    Points
    92
    Par défaut
    Je pense qu'il faut que ce code soit également appelé lors du changement d'enregistrement.
    Il faut que tu le mettes également sur l'évenement activation de ton formulaire.

  4. #4
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    J'imagine que tu as un formulaire en mode continu.
    Le premier pb est : les cases à cocher sont-elles indépendantes, ou ont -elles une source?

    Si elles sont indépendantes, qd tu vas cocher oui sur le premier enr. tu vas aussi cocher tous les autres enr..

    Si les cases ne sont pas indépendantes, alors la solution est d'utiliser une mise en forme conditionnelle pour les contrôles à griser, suivant la valeur de la case à cocher.

    pbz

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    Salut pgz,

    Les cases a cocher sont indépendantes du reste du formulaire puisqu'elles font partie d'un groupe d'options. Je crois que sans le groupe d'options, j'aurais eu des cases a cocher dépendantes..
    Et mon formulaire n'est pas en mode continu, seulement en mode ''formulaire unique''

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    Comment faire en sorte d'utiliser une mise en forme conditionnelle ? Mon code plus haut ressemble a cette forme, sauf que ca grise tous les enregistrements apres avoir clique ''oui'' sur le premier enregistrement.

    Je crois qu'il faut mettre le tout sur l'evenement activation afin que lors du prochain enregistrement, tout ne soit pas gris...mais comment procédéer ?

    merci

    vautour29

  7. #7
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Re,

    Ton groupe d'options est-il dépendant ou non?

    pgz

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    Mon groupe d'options n'est pas dépendant. De plus, le groupe d'options a une source car les valeurs des cases a cocher sont reportées dans une table.

  9. #9
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    le groupe d'options a une source car les valeurs des cases a cocher sont reportées dans une
    Donc dans les propriétés du groupe d'options, onglet données, ligne Source Contrôle, on trouve le nom d'un champ d'une table.

    SI c'est ça ton groupe est dépendant et il y a une solution.

    Quand tu cliques sur oui, le groupe d'option prend une certaine valeur, par ex 1.

    Tu ouvres ton form en création. Tu sélectionnes le contrôle à griser et dans la barre de menu, Format/Mise en forme conditionnelle.
    A gauche dans la liste de choix : Expression et dans le cadre à droite de la liste : [GroupeOption] = 1 ( la valeur du groupe qd OUI est choisi)
    et tu fais la mise en forme en cliquant sur activé, l'icone le plus à droite;

    C'est tout.

    pgz

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    Salut Pgz,

    Tu veux dire sélectionner n'importe quel contrôle a griser ? car dans mon code du début, j'ai toute une liste de contrôles a griser.

    A moins que tu fais reference au groupe d'options lui meme et non aux autres controles.

    vautour29

  11. #11
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Tu veux dire sélectionner n'importe quel contrôle a griser ?
    oui
    car dans mon code du début, j'ai toute une liste de contrôles a griser
    Tu mets la mise en forme conditionnelle sur tous les contrôles à griser.

    OK?

    pgz

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    ok pas de problène pour mettre la forme conditionnelle sur tous les contrôles du formulaire. Comme j'utilise Access2000,*j'ai fait comme tu as dit, j'ai sélectionné expression a gauche, donc dans le cadre a droite de la liste, je dois mettre cette ligne: [Frame116]=1 (ca remplace l'exemple [GroupeOption]=1)
    Qu'advient-il du code que j'ai mis plus haut ? dois-je l'enlever ou le laisser la ?

    merci encore

    vautour29

  13. #13
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Qu'advient-il du code que j'ai mis plus haut ? dois-je l'enlever ou le laisser la ?
    Tu peux l'écraser, il ne sert à rien. Les formats conditionnels fonctionnent sans code.

    Dis nous si ça marche,

    pgz

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    d'accord, je vais faire un test pour voir car j'ai essayé avec le code en plus du formattage. Ca avait l'air de marcher sauf que c'était bizarre car il y avait des enregistrements gris et d'autres pas.

    je réessaye sans le code et je te reviens

    merci

    vautour29

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    Re-salut Pgz,

    Tout fonctionne a merveille et je n'ai plus de probleme avec les autres enregistrements!

    Un tres gros merci pour ton aide!

    vautour29

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

Discussions similaires

  1. formulaire non modifiable
    Par jnmab dans le forum IHM
    Réponses: 3
    Dernier message: 25/09/2009, 17h59
  2. [WD9] Données de sous-formulaire non modifiables
    Par KOUADIO SEVERIN dans le forum WinDev
    Réponses: 3
    Dernier message: 18/09/2009, 21h44
  3. [MySQL] Données du formulaire non ajoutée dans ma BD
    Par Sofalkin dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 07/09/2008, 11h58
  4. Données de formulaire non récupérées
    Par Christophe P. dans le forum Struts 1
    Réponses: 5
    Dernier message: 02/09/2006, 11h33
  5. Réponses: 5
    Dernier message: 30/09/2005, 16h42

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