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 qui s'obstine à être vide


Sujet :

VBA Access

  1. #1
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 684
    Par défaut Recordset qui s'obstine à être vide
    Hello tout le monde,

    je bute sur un problème ce matin, et qui me bloque bien

    J'ai un recordset ADODB qui me retourne systématiquement RS.EOF = True alors que la requête qui le détermine retourne en principe 3 enregistrements.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    strSQL = "SELECT VEN_VENDOR_NAME, VEN_VENDOR_VAT, VEN_VENDOR_CITY FROM TAL_VENDORS_VEN WHERE VEN_VENDOR_VAT LIKE '*" & Replace(Me.Txt_VAT_Auto.Value, "'", "''") & "*' AND UCASE(VEN_VENDOR_CITY) LIKE '" & UCase(Replace(Nz(Me.Txt_City_Auto.Value, ""), "'", "''")) & "*'"
                    RS.Open strSQL, CurrentProject.Connection, adOpenDynamic, adLockOptimistic
                    strMsgbox = "There are " & nbvendors & " possible vendors with such VAT code :"
     
                    Do Until RS.EOF
                        strMsgbox = strMsgbox & vbCr & RS.Fields("VEN_VENDOR_VAT").Value & ": " & RS.Fields("VEN_VENDOR_NAME").Value & " in " & RS.Fields("VEN_VENDOR_CITY").Value
                        RS.MoveNext
                    Loop
                    RS.Close
    La requête qui est donc la suivante dans mon cas de figure :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT VEN_VENDOR_NAME, VEN_VENDOR_VAT, VEN_VENDOR_CITY FROM TAL_VENDORS_VEN WHERE VEN_VENDOR_VAT LIKE '*123*' AND UCASE(VEN_VENDOR_CITY) LIKE '*'
    est sensée me retourner 3 enregistrements.

    Une idée du paramètre qu'il me faudrait changer ?

    Merci !
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel (3e édition)
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  2. #2
    Membre Expert Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 909
    Par défaut
    Bonjour,

    Je pense que tu as contrôlé ou essayé mais au cas où : as-tu essayé le rs.movefirst ? Regarder si rs.recordcount renvoi une valeur > 0 ?

    Sinon, la requête me semble normale au premier coup d'oeil.

    Cordialement,

  3. #3
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 684
    Par défaut
    Oui j'avais fait les différents tests "classiques".
    Le movefirst m'est refusé car BOF = True et EOF=True également.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel (3e édition)
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  4. #4
    Invité
    Invité(e)
    Par défaut
    Salut JP

    Essayes en remplaçant modifiant le caractère générique * par % (il me semble), en ADODB j'ai déjà eu des surprises.

    Philippe

  5. #5
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 684
    Par défaut
    Hello Philippe



    j'ai modifié en % et ca passe relax

    Merci !
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel (3e édition)
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

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

Discussions similaires

  1. Gerer une liste "Boite a lettre" qui peut être vide
    Par Rakken dans le forum Débuter
    Réponses: 3
    Dernier message: 17/06/2013, 18h19
  2. Vérification d'un champ qui ne peut pas être vide
    Par mathieu dans le forum Téléchargez
    Réponses: 0
    Dernier message: 03/10/2011, 17h56
  3. [XL-2003] Comment documenter un DTPickers avec le contenu d'une cellule qui peut être vide.
    Par MichaSarah dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 05/12/2010, 01h54
  4. SELECT AS qui se révèle être une coquille vide
    Par Vict0 dans le forum Langage
    Réponses: 3
    Dernier message: 25/09/2010, 12h40
  5. Réponses: 8
    Dernier message: 13/04/2008, 15h44

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