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 :

Problème recordset vide et boucle.


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 35
    Points : 20
    Points
    20
    Par défaut Problème recordset vide et boucle.
    Salut à tous,

    J'ai un ptit soucis dans mon application Access. Je veux créer un recordset à partir d'une chaîne SQL, mais ça merde quand il est vide. Et le problème, c'est que je ne vois pas comment je peux tester s'il est vide

    J'ai essayé:
    -If rs.EOF then blablabla
    -If Not rs then blablabla
    -If rs = nothing then blablabla

    Rien ne fonctionne, il passe toujours au travers.

    Si vous avez une idée ou une piste, chuis preneur

  2. #2
    Membre averti Avatar de dr_feelgood
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    292
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Mars 2005
    Messages : 292
    Points : 373
    Points
    373
    Par défaut
    J'imagine que ta chaîne SQL est une requête SQL.

    Dans ce cas tu peux tester s'il y a des données par une fonction Dcount.
    .
    less is more

    vous pouvez faire une recherche dans le forum
    et également une recherche dans les FAQ

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 35
    Points : 20
    Points
    20
    Par défaut
    Je vais quand même mettre une partie du code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    sqlRequete = "SELECT DATE_APPEL FROM T_APPEL WHERE DOSSIER_APPEL = " & [Forms]![F_CLIENT]![SF_DOSSIER]![NUM_DOSSIER] & ";"
            Set db = CurrentDb
            Set rstDate = db.OpenRecordset(sqlRequete, dbOpenDynaset)
            If Not rstDate.EOF Then
                While Not rstDate.EOF
                    If rstDate.Fields("DATE_APPEL").Value > MaxDate Then
                        MaxDate = rstDate.Fields("DATE_APPEL").Value
                    End If
                    rstDate.MoveNext
                Wend
                [Forms]![F_CLIENT]![SF_DOSSIER]![DATE_DERNIER_ENTRETIEN] = MaxDate
            End If
    Sinon je teste ta commande de suite...

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 35
    Points : 20
    Points
    20
    Par défaut
    Bon j'ai testé, mais j'arrive à une erreur de syntaxe, et j'ai un peu du mal à voir où...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    NbreEnr = DCount("[DATE_APPEL]", "[T_APPEL]", "[DOSSIER_APPEL] = " & [Forms]![F_CLIENT]![SF_DOSSIER]![NUM_DOSSIER] & ";")
    DATE_APPEL = champ à comptabiliser
    T_APPEL = table (donc domaine ?)
    DOSSIER_APPEL = condition de filtre dans la table

    Où ai-je fait une erreur ?

    Merci d'avance.

  5. #5
    Membre régulier Avatar de Frog74
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 171
    Points : 70
    Points
    70
    Par défaut
    Salut , essai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NbreEnr = DCount("[DATE_APPEL]", "[T_APPEL]", "[DOSSIER_APPEL] = " & [Forms]![F_CLIENT]![SF_DOSSIER]![NUM_DOSSIER] )

  6. #6
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 35
    Points : 20
    Points
    20
    Par défaut
    Oui c'était les ";" qu'il fallait pas mettre. Ca doit marcher comme ça.

    Merci

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

Discussions similaires

  1. problème de recordset dans une boucle while
    Par sebac dans le forum VBA Access
    Réponses: 1
    Dernier message: 04/06/2007, 11h47
  2. [VB6] Problème Recordset Hierarchique
    Par boudincweole10 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 23/04/2006, 22h27
  3. [VB6] Problème contrôle Timer et boucle For-Next ...
    Par Stéphane BEHMENBURG dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 01/12/2005, 17h36
  4. vbnet + recordset vide
    Par cell dans le forum Windows Forms
    Réponses: 19
    Dernier message: 19/04/2005, 13h31
  5. probleme de recordset dans une boucle do while
    Par Shoryu dans le forum ASP
    Réponses: 18
    Dernier message: 05/07/2004, 15h30

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