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 :

Recordset ne renvoyant pas le bon nombre d'enregistrement


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 371
    Par défaut Recordset ne renvoyant pas le bon nombre d'enregistrement
    Bonjour,


    Je suis en train de faire quelque chose de simple (me disais-je)... Mais il y a un bug et je ne parviens pas à savoir pourquoi.
    Je souhaiterai charger dans un recordset le contenu d'une table TblPrincipale(contenant actuellement 23 enregistrements) pour ensuite pouvoir éditer les informations contenues dans les champs de la table.
    La table est bien présente et les enregistrements également. Mais quand j'écris le code ci-dessous (voir rst2) le recordset rst2 ne contient qu'un seul enregistrement!!
    Je ne vois vraiment pas ou ça coince d'autant plus que j'ouvre ensuite un recordset sur base d'un querydef (la requète en question visant la même table principale) et là j'obtiens les enregistrements que je désire....



    Avez-vous une suggestion????

    Merci et bonne journée à tous et toutes




    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
        Dim rst As DAO.Recordset ' recordset sur base d'une table
        Dim qry As DAO.QueryDef 'recordset sur base d'une requète
        Dim rst2 As DAO.Recordset ' recordset sur base d'une table
     
        Dim strFiltre As String 'chaine qui contiendra les filtres = where d'une requete sans le where
        Dim strNatPAC As String 'chaine pour stocker la nature des PAC et faire des comparaisons
        Dim strCrit As String 'chaine pour le critère de sélection de l'enregistrement dans la base ouverte avec le recordset rst2
     
        Dim n As Integer 'sers de compteur
     
        Dim db As DAO.Database  
        Set db = CurrentDb
     
        On Error GoTo Err
     
        'on ouvre un rst2 basé sur la table principale 
        strCrit = "SELECT TblPrincipale.ID, TblPrincipale.NumMIC, TblPrincipale.NumPrelv FROM TblPrincipale"
     
        Set rst2 = db.OpenRecordset(strCrit, dbOpenDynaset)   ' open recordset basé sur la table TblPrincipale
        rst2.MoveFirst
        If rst2.RecordCount <> 0 Then
            MsgBox "Nombre d'enregistrement dans le recordset: " & rst2.RecordCount & "."
        Else
            MsgBox "Aucun enregistrement n'a été trouvé. Pas de numérotation réalisée"
            GoTo onsortici
        End If
     
        'ouverture d'un recordset sur base du query
        Set qry = db.QueryDefs("NumerotePrelev")
        ' affectation des paramètres
            qry.Parameters("[Forms]![frmPrincipale]![memnumselected]") = Me![memnumselected]     'numero de dossier sélectionné
        Set rst = qry.OpenRecordset

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 127
    Par défaut
    Bonjour,
    Dans certains cas, il arrive que recordcount renvoie le nombre d'enregistrements parcourus. Il faudrait placer d'abord
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    rst.movelast
    rst.movefirst
    pour lui mettre les yeux en face des trous

Discussions similaires

  1. Réponses: 8
    Dernier message: 01/06/2010, 11h43
  2. [1.x] [sf 1.4.x] Redirection ne renvoyant pas le bon code http
    Par Cethywolf dans le forum Symfony
    Réponses: 6
    Dernier message: 17/01/2010, 18h28
  3. fonction groupCount() renvoi pas le bon nombre
    Par Elendhil dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 14/01/2008, 18h18
  4. Réponses: 7
    Dernier message: 29/03/2007, 15h30
  5. Requête UNION renvoie pas le bon nombre de lignes
    Par le lynx dans le forum Contribuez
    Réponses: 2
    Dernier message: 29/06/2006, 10h52

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