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 : affecter une valeur lorsque coché


Sujet :

IHM

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 39
    Points : 23
    Points
    23
    Par défaut Case à cocher : affecter une valeur lorsque coché
    Bonjour à tous,

    Je possède actuellement un formulaire dans lequel j'ai mis les 12 mois de l'année. Il y à une case à cocher par mois (les mois sont nommés de la manière suivante : Janvier, Février, ...).

    Je voudrais, dès que je coche la case, qu'une valeur soit affectée à cette case afin de pouvoir utiliser cette valeur dans une requête.

    Par exemple : si je coche la case Janvier, la valeur 01 sera affectée à cette case afin de pouvoir mettre comme critère au niveau de ma requête le critère 01.
    Si je coche les cases Janvier et Juin, les valeurs 01 et 06 seront respectivement affectées aux cases à cocher et ma requête prendra alors les valeurs 01 OU 06 au niveau des critères de sélection.

    Comment puis-je affecter une telle valeur à une case à cocher dès que celle-ci est cochée et inversement ?

    D'avance merci pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Est-ce que toutes tes cases peuvent être cochés en même temps, ou il 'y en a qu'une à la fois ? Si une case à la fois, créer un groupe d'options, et prend la propiété value de ce groupe, chaque case aura un numéro.

    Starec

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 39
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par Starec
    Bonjour

    Est-ce que toutes tes cases peuvent être cochés en même temps, ou il 'y en a qu'une à la fois ? Si une case à la fois, créer un groupe d'options, et prend la propiété value de ce groupe, chaque case aura un numéro.

    Starec
    Plusieurs cases peuvent être cochées à la fois.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re

    Les cases à cocher n'ont pas de valeur, c'est True (coché) ou False (décoché), utilise ces valeurs dans tes requêtes, tu n'as pas besoin de passer par 01,02, etc.

    Starec

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 39
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par Starec
    Re

    Les cases à cocher n'ont pas de valeur, c'est True (coché) ou False (décoché), utilise ces valeurs dans tes requêtes, tu n'as pas besoin de passer par 01,02, etc.

    Starec
    Donc en gros, il faut que j'utilise le générateur d'expression dans ma requête au niveau de critère genre :
    Si case1 = True alors 01 OU Si case2 = True alors 02 ...

    Je suis oblgé d'avoir les valeurs 01, 02 ... car j'ai une table qui comprend ces valeurs (01 qui correspond à janvier, 02 à février ...)

    C'est ça ?

    Si oui, comment je fai exactement avec le générateur d'expression car je le maitrise très mal (je ne sais faire que les chose toutes simples).

    D'avance merci.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 39
    Points : 23
    Points
    23
    Par défaut
    Quelqu'un a-t-il une autre solution ?

  7. #7
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,

    Ici, je vais simplement répondre à ta question, sans discuter la façon que tu emploie pour choisir tes mois pour former le critère de ta requête..... ....
    Si je coche les cases Janvier et Juin, les valeurs 01 et 06 seront respectivement affectées aux cases à cocher et ma requête prendra alors les valeurs 01 OU 06 au niveau des critères de sélection.

    Comment puis-je affecter une telle valeur à une case à cocher dès que celle-ci est cochée et inversement ?
    Petit exemple simple:
    -Sur un formulaire indépendant, tu crée 12 cases à cocher (CheckBox) que tu nomme "Cocher1" à "Cocher12".
    -Tu mets dans la propriété "Valeur par défaut" de chaque CheckBox, sa valeur en chiffre (1 pour janvier, 2 pour Février........12 pour Décembre)
    -Tu crée une zone de texte (Txtvaleur) qui te permettra de visualiser les valeurs des mois sélectionnés.
    -Tu crée un contrôle bouton de commande (cmdValeur)

    Maintenant un peu de code:
    Sur événement "Sur ouverture" du formulaire, tu tape:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Form_Open(Cancel As Integer)
    Dim ctl As Control
    'Permet de décocher toutes les cases lors de l'ouverture du Formulaire
    For Each ctl In Me.Controls
        If ctl.ControlType = acCheckBox Then
            ctl.Value = 0
        End If
    Next
    End Sub
    Sur événement "Sur clic" du bouton de commande (cmdValeur), tu tape:
    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 cmdValeur_Click()
    Dim ctl As Control
    Dim StrValeur As String
    'Efface le contenu de la zone de texte
    Me.TxtValeur = ""
    For Each ctl In Me.Controls
    'Si le contrôle est de type CheckBox.....
    If ctl.ControlType = acCheckBox Then
    '....et s'il est coché, alors on affiche sa valeur par défaut
        If ctl.Value = -1 Then
            StrValeur = Nz(Me.TxtValeur.Value & "-" & ctl.DefaultValue)
            Me.TxtValeur = StrValeur
        End If
    End If
    Next
    End Sub
    Voila, maintenant, dès que tu vas cocher un ou plusieurs mois, toutes les valeurs seront affichées dans la zone de texte (TxtValeur) sous la forme [-1-2-8-12].
    Ces valeurs sont contenues dans la variable "StrValeur".
    Maintenant, a toi d'adapter ceci à ton application.......même si à mon avis, il y a beaucoup plus simple....

    Bonne continuation...
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 39
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par FreeAccess
    Bonjour,

    [...]

    Bonne continuation...
    Merci pour cette aide ...
    Vu que je ne maitrise pas VBA, j'ai utilisé le générateur d'expression en prenant en compte le fait que la valeur d'une case cochée correspont à -1 et décochée à 0.

    Soit au niveau du critère de ma requête : VraiFaux (Case1=-1;"01";"") Ou (Case2=-1,"02";"") ...
    Et la bonne nouvelle c'est que ça fonctionne !

Discussions similaires

  1. Afficher cases à cocher selon une valeur d'une liste déroulante.
    Par sihammaster dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 19/04/2012, 11h26
  2. affecter une valeur à une case à cocher non cochée
    Par gastoncs dans le forum Langage
    Réponses: 4
    Dernier message: 29/07/2010, 17h19
  3. [AC-2007] Comment vérifier la valeur d'une case à cocher d'une valeur
    Par glooping dans le forum IHM
    Réponses: 1
    Dernier message: 01/10/2009, 17h29
  4. Réponses: 15
    Dernier message: 21/12/2008, 19h31
  5. [MySQL] Retour valeur case à cocher depuis une base de données
    Par asvin dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 23/10/2008, 19h25

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