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 :

Ajouter un 0 si le Recordset est vide (Null)


Sujet :

VBA Access

  1. #1
    Membre habitué
    Ajouter un 0 si le Recordset est vide (Null)
    Bonsoir,

    Avec le code ci-joint je voudrais lorsque le recordset est vide (Null) mettre un 0 à la
    zone de texte txtPaiementAdh.

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Set rec = CurrentDb.OpenRecordset(StrSqlNbPaiement, dbOpenDynaset)
     
        If Not rec.EOF Then
           rec.MoveLast
           Me.txtPaiementAdh.Value = rec.RecordCount
        End If
     
    '--- Nb de paiement
         'Me.txtPaiementAdh.Value = Nz(Me.txtPaiementAdh.Value, 0)


    En codant de cette façon je n’obtiens pas de 0 sur ma zone de texte,
    pouvez-vous svp m’indiquer ou se trouve mon erreur ?

    Merci.

    Salutations

  2. #2
    Membre expert
    peut être rajouter un Else
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If Not rec.EOF Then
           rec.MoveLast
           Me.txtPaiementAdh.Value = rec.RecordCount
    else
    Me.txtPaiementAdh.Value = rec.RecordCount
        End If
    "Always look at the bright side of life." Monty Python.

  3. #3
    Membre expert
    Salut
    Ne serait-ce pas plus simple ainsi
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Set rec = CurrentDb.OpenRecordset(StrSqlNbPaiement, dbOpenDynaset)
    If rec.RecordCount > 0 Then
        Me.txtPaiementAdh.Value = rec.RecordCount
    Else
        Me.txtPaiementAdh.Value = 0
    End If

  4. #4
    Modérateur

    Bonjour.

    Plus direct probablement :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Set rec = CurrentDb.OpenRecordset(StrSqlNbPaiement, dbOpenDynaset)
     
    If rec.RecordCount > 0 Then
        rec.movelast
        rec.movefirst 'Peut-être ? Ça dépend à quoi sert le recordset après.
    end if
     
    Me.txtPaiementAdh.Value = rec.RecordCount


    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Membre habitué
    Bonjour,

    Merci pour vos réponses

    Salutations

###raw>template_hook.ano_emploi###