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 :

Case à cocher


Sujet :

Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 191
    Points : 78
    Points
    78
    Par défaut Case à cocher
    bonjour,

    dans un sous formulaire ou (dans la table correspondante ?), je voudrais compter le nombre de cases à cocher (booléen) qui sont effectivement cochées. J ai cherché sur le forum apres avoir vainement essayé. Echec
    pouvez vous m aider svp ?
    D avance merci.

    PS : vaut il mieux travailler sur les formulaires ou sur les tables lorsqu'on fait des calculs ?

  2. #2
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut Re: Case à cocher
    Citation Envoyé par Leehan
    PS : vaut il mieux travailler sur les formulaires ou sur les tables lorsqu'on fait des calculs ?
    Je sais pas...
    C'est peut-être plus performant de chercher directement sur les données de la table, mais parfois c'est pas facile de retrouver la source des données du formulaire, les filtres,...
    Et si les calculs sont trop complexes il est plus simple de parcourir le formulaire que de tenter de faire une requête tarabiscotée.

    alors sur le formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim lCpt As Integer
        If RecordsetClone.RecordCount > 0 Then
            RecordsetClone.MoveFirst
            While Not RecordsetClone.EOF
                If RecordsetClone!TonChampCase = True Then lCpt = lCpt + 1
                RecordsetClone.MoveNext
            Wend
        End If
        MsgBox lCpt
    ou bien si tu préfères sur la source des données :
    - uniquement si la source est une table ou une requête, ça ne marche pas avec du SQL dans la source
    - et s'il y a un paramètre dans ta requête il va t'ouvrir une boîte de dialogue te demandant de renseigner le paramètre...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox DCount("*", Me.RecordSource, IIf(FilterOn, Me.Filter, "1=1") & " and TonChampCase = true")
    Dans les 2 cas on ne compte que les cases à cocher non filtrées dans le formulaire.
    A prendre avec des pincettes, c'est vite fait, j'ai pas trop beaucoup testé.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 191
    Points : 78
    Points
    78
    Par défaut
    merci de ton aide et de ton attention.
    Mais je ne suis pas du tout versé dans le codage..mais alors pas du tout
    Mes competences sont vraiment tres limitées voire inexistantes ds le domaine. Je vais tacher de reflechir a quelque chose de plus...simple que la case à cocher. Peut etre un simple oui ou non..je ne sais pas trop...
    Merci encore

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Peut-être avec un simple requête ou l'on affiche les calculs.
    Faire un count des enregistrements où la valeur est soit 1 soit 0, oui / non, yes /no....
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  5. #5
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    Mais je ne suis pas du tout versé dans le codage..mais alors pas du tout
    parfois on a pas le choix, ou alors il faut se passer de la fonctionnalité...

    Je vais tacher de reflechir a quelque chose de plus...simple que la case à cocher. Peut etre un simple oui ou non..
    En quoi oui/non est-il plus simple que vrai/faux??

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 55
    Points : 68
    Points
    68
    Par défaut
    Salut

    Je te conseille d'utiliser une requete, de passer en mode SQL et copier ceci:


    Si tu veux que la requete compte le nombre d'enregistrement de ta table:

    SELECT Count(Nomtable.Nomchamp) AS Compte
    FROM Nomtable;

    Ou si tu veux que la requete te compte le nombre d'neregistrement de ta table quand la case à coher est activé:

    Select Sum(IIf(Nomchamp=True,1)) as Compte from Nomtable;

    Bon courage
    A+

  7. #7
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Pour compter le nombre de case à cocher (champ par exemple nommé lechamp), dans une zone de texte placer la source :


  8. #8
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    Citation Envoyé par Tofalu
    Pour compter le nombre de case à cocher (champ par exemple nommé lechamp), dans une zone de texte placer la source :

    c'est sûr pour un calcul simple comme ça c'est mieux que mon code quand même...

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