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 :

Case à cocher [AC-2003]


Sujet :

IHM

  1. #1
    Membre du Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 137
    Points : 62
    Points
    62
    Par défaut Case à cocher
    Bonjour tout le monde,

    J'ai un soucis j'ai crée dans une table un champs de type Oui/Non
    Sur un formulaire je voudrais faire un système pour avoir une réponse si la case est coché et une autre si ce n'es pas le cas.

    J'ai ma case que je peut cocher dans mon formulaire tout marche impect, si je vais dans ma table je vois coché ou non coché.
    Ce que je voudrais faire c'est dans un champs texte que si ma case est coché je mette une valeur X et si elle est pas coché je mette la valeur Y

    J'essaye donc ce code la pour ma case:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =VraiFaux([NCA_clotur]=Oui;"coché";"noncoché")
    Cependant rien ne se passe quand je coche ou décoche ma case.

    Ou est mon erreur?


    Le but de ce test d'utiliser celà dans du VBA à l'exécution de mon formulaire.

    Merci d'avance.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    Bonjour voici pour ma part comment je procède

    disons que ta case à cocher s'appelle "pointage"
    et que le zone de type texte que tu veux renseigner s'appelle "coché"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if pointage = -1 then
                coché = "X"
            Else
               coché = " " 
            end if
    En espérant que ça solutionne ton problème

  3. #3
    Membre régulier Avatar de AlainL
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    178
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 178
    Points : 90
    Points
    90
    Par défaut
    Sur ta case à cocher, sur l'évenement "Après MAJ", tu inclus:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NomDeTonChamp.Value = Iff (NCA_clotur = True;"Coché";"Non coché")
    S'il s'agit d'un champ, si c'est une étiquette, alors Value est remplacé par Caption.

    Bon dev

  4. #4
    Membre du Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 137
    Points : 62
    Points
    62
    Par défaut
    J'ai réussi a faire fonctionner mon code, cependant j'ai un problème.

    Mon formulaire ou se trouve cette case possède des cases clic ou tu peut passer d'un enregistrement à un autre. Ma case à cocher ou j'avais mon probleme me permet de faire apparaitre une case clic qui me permet de dévérouiller mes données et donc de les modifiées.

    Mon but et lorsque j'ai ma case à cocher de cocher ma case clic qui me permet de dévérouiller soit masquer et dévérouillé si elle est pas cocher.

    Cependant j'ai mis mon code sur ma case à cocher sur l'evenement "sur clic" donc celà fonctionne uniquement pour un nouvel enregistrement. Comment faire pour que le code suivant analyse ceci à chaque enregistrement?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Select Case Me.NCA_clotur
    Case Is = Non
    Me.Dévérouiller_enregistrement_actif.Visible = True
        Case Else
        Me.Dévérouiller_enregistrement_actif.Visible = False
    End Select
    Merci d'avance et merci pour les réponses qui m'ont permis d'avancer.

    ps: si c'est pas clair dites moi le j'essayerai de m'exprimer plus explicitement mais c'est pas simple

    ps: j'ai un champ de mon formulaire qui change à tous les enregistrement j'essaye de mettre ce code sur l'évènement "Sur modif" "si modif" "apres maj" et aucun ne me fait mon code, ma case reste toujours visible...

  5. #5
    Membre du Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 137
    Points : 62
    Points
    62
    Par défaut
    Je continue à faire mes test cependant je n'arrive toujours pas à faire ce que je veut.

    J'ai crée un champs texte pour bien vérifié mes données. Dans ce champs j'ai mis en source:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =VraiFaux([NCA_clotur]=Vrai;"Coché";"Non coché")
    Ceci fonctionne sans aucun problème quand je change d'enregistrement.

    Cependant je n'arrive toujours pas à faire masquer ma case de vérouillage de formulaire lorsque ma case est coché.

    Il faut que je passe par du vba? si oui à quel endroit... Ou puis-je modifier directement mon champs (case à clic) pour que suivant le résultat (texte) ou case à cocher que celui ci vire tout seul.

    Mon champs permettant de dévérouiller mon formulaire possède ce code vba sur l'évenement "sur clic"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    'Deverouille l'enregistrement après click sur bouton
     
    Private Sub Dévérouiller_enregistrement_actif_Click()
    Me.AllowEdits = True
    End Sub
    Merci d'avance

    @AlainL : j'ai essayer ton code mais ca me fait rien ça me fait même une erreur

  6. #6
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    Si ce code fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Select Case Me.NCA_clotur
    Case Is = Non
    Me.Dévérouiller_enregistrement_actif.Visible = True
        Case Else
        Me.Dévérouiller_enregistrement_actif.Visible = False
    End Select
    met le dans l'événement Sur Activation de ton formulaire. cet événement se produit à l'ouverure du formulaire et lors de chaque changement d'enregistrement.

    Domi2

  7. #7
    Membre du Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 137
    Points : 62
    Points
    62
    Par défaut
    Ce code ne fonctionne pas que ce soit en le mettant sur l'activation formulaire ou sur la case à cocher.

  8. #8
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    re,

    L'évément Sur activation, c'est Form_Current, pas GotFocus (Sur réception focus).

    Domi2

  9. #9
    Membre du Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 137
    Points : 62
    Points
    62
    Par défaut
    Cool ca marche impec
    Merci à toi

  10. #10
    Membre du Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 137
    Points : 62
    Points
    62
    Par défaut
    Heu en fait j'ai une condition à rajouter qu'on viens de me demander à l'instant.

    Le code marche très bien cependant, on me demande de ne pas faire disparaitre cette case pour certains utilisateur.
    J'ai essayer de faire passer un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Select Case CurrentUser
    Case Is = "X"
    Me.Dévérouiller_enregistrement_actif.Visible = True
    Case Else
       Me.Dévérouiller_enregistrement_actif.Visible = False
    End Select
    Cependant celà ne marche pas. J'ai mis ce script avant l'autre dans l'évement "sur activation"

  11. #11
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Re,

    Tu as vérifié si la valeur retournée par CurrentUser est bien celle que tu attends ?

    Tu peux utiliser soit Debug.Print, soit une simple MsgBox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    12345
    Select Case CurrentUser
     
    MsgBox CurrentUser
     
    Case Is = "X"
    Parce que ça risque de te ramener "Admin" comme valeur. Pas vraiment utile.

    Si tu veux connaître le nom d'utilisateur Windows, il te faut utiliser :

    Ceci dit, je ne suis pas certain que coder des noms d'utilisateurs pour faire ce genre de tests soit vraiment une bonne idée...

    Domi2

  12. #12
    Membre du Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 137
    Points : 62
    Points
    62
    Par défaut
    Le nom d'utilisateur est bon ca ne me met pas admin ou quoi que ce soit.

    J'ai cependant rusé en faisant un 2e bouton qui me permet de dévérouillé mais qui est visible seulement au futur admin de la base.

    Merci pour ton aide.

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

Discussions similaires

  1. [MIGRATION] champ de type "case à cocher"
    Par The_Nail dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 10/05/2011, 11h07
  2. Case à cocher dans une requête
    Par kloss dans le forum Access
    Réponses: 6
    Dernier message: 14/10/2004, 11h44
  3. Récupérer toutes les cases à cocher
    Par psyco2604 dans le forum ASP
    Réponses: 7
    Dernier message: 14/10/2004, 10h54
  4. Activer cases à cocher
    Par schnito dans le forum MFC
    Réponses: 4
    Dernier message: 24/01/2004, 16h07
  5. [CR] Création de tableau et case à cocher
    Par aysse dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 26/11/2003, 17h07

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