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

VB 6 et antérieur Discussion :

[VB6] pb avec critère sur find avec rs ADODB


Sujet :

VB 6 et antérieur

  1. #1
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 89
    Points : 73
    Points
    73
    Par défaut [VB6] pb avec critère sur find avec rs ADODB
    Bonjour,

    J'arrive pas à trouver une documentation pour me sortir de mon problème. J'essaie de faire un find avec un recordset de type ADODB. Le recordset est chargé à partir d'un fichier .csv

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            Dim critere As String
            critere = "[" & rs.Fields(0).Name & "] = '" & NoDossier & "'" & _
                       " and [" & rs.Fields(2).Name & "] = " & 6173
     
            rs.Find critere
    J'obtien l'erreur :
    "Run-Time error '3001' : Les arguments sont de type incorrecte, en dehors des limites autorisées ou en confilt les uns avec les autres."

    Quand j'exécute chacune des parties du critère une à la fois, ça fonctionne. C'est quand j'essaie de mettre les 2 parties ensemble séparé par le AND que j'obtiens l'erreur.

    Si quelqu'un peut m'aider, en documentation à consulter ou d'une autre façon, je suis ouverte à tout.

    J'espère juste que je ne fais pas une erreur niaiseuse que je n'arrive pas à voir...

    Merci pour votre aide!

  2. #2
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    deja je croit qu'il y a un petit pb de syntaxe essai de revoir ca provient peut etre de la

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    critere = "[" & rs.Fields(0).Name & "] = '" & NoDossier & "'" & _
                       " and [" & rs.Fields(2).Name & "] =  6173"
    ou alors 6173 est une variable ??
    "Toute question a une reponse. Et chaque reponse est une nouvelle question." Albert EINSTEIN

    En cas de Question resolu, n'oubliez pas

  3. #3
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 89
    Points : 73
    Points
    73
    Par défaut
    Merci Sovo,

    Tu as raison mais l'erreur ne vient pas de là, j'avais simplement remplacé ma variable par une valeur qu'elle peut prendre pour éviter de charger mon code.

    J'ai quand même pris le temps de refaire un test avec la correction que tu me suggères et j'ai toujours la même erreur.

    Désolé pour cet oubli.

    Je me demande si ça peut venir du fait que mon recordset est branché sur un fichier csv. Peut-être que le critère est limité dans cette situation. Je n'ai rien trouvé à ce sujet encore cependant.

  4. #4
    Rédacteur
    Avatar de jacma
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    612
    Détails du profil
    Informations personnelles :
    Âge : 79
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 612
    Points : 1 241
    Points
    1 241
    Par défaut
    Bonjour

    Essayes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rs.Find "Name = '" & strName &'" And NoDossier = '"& strNum'"
    Si je n'ai pas été top vite, cela devrait fonctionner...

  5. #5
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 89
    Points : 73
    Points
    73
    Par défaut
    Lles ".Name" que j'utilise sont pour ne pas avoir à écrire le nom du champ. Ces fichiers ont des noms de champs assez long avec des espaces et même des points (la personne qui a fait ça ne programme sûrement pas). De cette façon j'évite de faire des erreurs dans le nom de la variable. De plus, si jamais quelqu'un décidait de modifier le nom de la variable, je n'aurais pas à modifier mon code pour autant.

    Ma requête porte sur un numéro de dossier (texte) et un centre d'activité (numérique). Je viens de réessayer avec le nom des champs directement dans la requête (comme ci-dessous) et ça ne fonctionne toujours pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     critere = "[No Dossier Identi] = 'P12345678'" & _
                       " and [Sous-centre activités code] =  6173"
    Et ça fonctionne quand je les fais séparée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    critere = "[No Dossier Identi] = 'P12345678'" 
    ou
    critere = "[Sous-centre activités code] =  6173"
    Ça me semble vraiment le "And" le problème. De plus, j'essaie de faire un rs.sort et ça ne fonctionne pas non plus. J'avais au départ un "order by" dans ma requête sql et ça ne donnais pas d'erreur mais j'ai constater que les enregistrements n'étaient pas triées selon le "order by".

    Bref, j'ai l'impression qu'on peut mettre un recordset sur un fichier ".csv" mais on n'a pas toute les fonctionnalités liées à un "vrai" recordset.

Discussions similaires

  1. compte valeur avec critère sur autre colonne
    Par NATOU2 dans le forum Excel
    Réponses: 3
    Dernier message: 28/01/2008, 11h02
  2. Réponses: 1
    Dernier message: 24/05/2007, 23h55
  3. Requete SUM sur une table avec critère sur une autre
    Par wail00 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/05/2007, 16h58
  4. ETAT avec critères sur somme
    Par Leeloo92 dans le forum IHM
    Réponses: 2
    Dernier message: 12/04/2007, 14h39
  5. Requêtes sur enregistrements avec critères dates
    Par Aliveli dans le forum Access
    Réponses: 10
    Dernier message: 05/06/2006, 13h41

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