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

VBA Access Discussion :

Vérifier les enregistrements d'un formaulaire sans requête [AC-2010]


Sujet :

VBA Access

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut Vérifier les enregistrements d'un formaulaire sans requête
    Bonjour,

    Dans un formulaire lié à une table temporaire, j'aimerais vérifier l'état des enregistrements affichés pour décider si je dois ou non lancer une action.
    Plus précisément, les enregistrements affichés dispose d'une cas à cocher pour être sélectionnés individuellement et je ne lance l'action que si au moins un enregistrement est sélectionné.

    Je sais le faire en faisant une requête sur la table liée mais je me dis qu'il doit y avoir plus simple.
    Notamment de passer en revue les enregistrement affiché pour vérifier combien sont sélectionnés ?

    Est-ce possible et si oui comment svp ?

    Merci d'avance de votre aide

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 817
    Points : 14 911
    Points
    14 911
    Par défaut
    bonjour,
    Je sais le faire en faisant une requête sur la table liée mais je me dis qu'il doit y avoir plus simple.
    les solutions les plus simples sont celles qui posent le moins de souci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If Dcount("*","TableTemporaire","CaseaCocher=True") <> 0 Then
    'ou 
    If Dsum("CaseACocher","TableTemporaire") <> 0 Then
    Abs(Dsum("CaseACocher","TableTemporaire")) donne également le nombre de cases cochées

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Merci Tee,

    Ok, j'avais pas pensé au fonction de groupement de domaine, en effet.

    Mais pour ma gouverne et un éventuel usage ultérieur, peut-on parcourir les enregistrements affichés dans un formulaire ?

    Merci ;-)

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 817
    Points : 14 911
    Points
    14 911
    Par défaut
    oui, c'est possible, ci-dessous un exemple:
    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
    ' pour compter le nombre d'occurrences cochées
    Dim lgNbCasCoch As Long
     
    With Me.RecordsetClone
        If .RecordCount <> 0 Then
            .MoveFirst
            Do Until .EOF
                If .Fields("CaseACocher") Then lgNbCasCoch = lgNbCasCoch + 1
                .MoveNext
            Loop
        End If
    End With
     
    If lgNbCasCoch > 0 Then
        MsgBox "nombre d'enregistrement sélectionnés: " & lgNbCasCoch
        '...
    End If

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Merci Tee ;-)

  6. #6
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 873
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 873
    Points : 3 459
    Points
    3 459
    Par défaut
    Bonjour lololebricoleur, tee_grandbois,

    Il est possible de parcourir les enregistrements avec le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim rsrt as DAO.Recordset
    Set rst = Me.RecordsetClone
    rst.MoveFirst
    etc...
    Bonne journée

    Oupss je viens de voir qu'on répondait en même temps...

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/11/2019, 10h33
  2. Réponses: 2
    Dernier message: 10/07/2009, 19h17
  3. Réponses: 3
    Dernier message: 04/05/2006, 13h00
  4. Réponses: 3
    Dernier message: 28/10/2005, 14h03
  5. [Formulaire] vérifier les champs avant enregistrement
    Par julien_t_m dans le forum Access
    Réponses: 5
    Dernier message: 16/10/2005, 20h53

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