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 :

Utilisation de la methode find d'un recordset


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mai 2015
    Messages : 20
    Par défaut Utilisation de la methode find d'un recordset
    Bonsoir,

    Je m'explique : j'ai besoin, pour remplir un fichier texte, d'informations venant de deux tables.
    J'effectue donc une première requête qui remplis mon premier jeu de donnée que je parcours et pendant le parcours j'effectue une recherche avec la fonction find sur mon second recorset.

    Or je ne sais pas comment utiliser le résultat renvoyé par cette méthode. Quelqu'un a t-il une idée ?

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 137
    Par défaut
    Bonjour,

    Une fois positionné sur l'enregistrement grâce au find(first?) il te suffit de mettre les données d'un champ vers l'autre comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    rstDestination.edit
    rstDestination.fields(nom) = rstSource.fields(nom)
    rstDestination.update
    Il existe un tuto sur DAO et un sur ADO.

    Cordialement,

    NB: tu ne peux pas faire tout avec la même requête ?
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mai 2015
    Messages : 20
    Par défaut re
    Re-Bonjour et merci de votre réponse.

    NB: tu ne peux pas faire tout avec la même requête ?
    Non car je vais chercher mes info sur deux BDD différentes et à moins de me tromper cela ne peux pas s'effectuer en une seule requête.

    Bonjour,

    Une fois positionné sur l'enregistrement grâce au find(first?) il te suffit de mettre les données d'un champ vers l'autre comme ceci :

    rstDestination.edit
    rstDestination.fields(nom) = rstSource.fields(nom)
    rstDestination.update
    Il existe un tuto sur DAO et un sur ADO.

    Cordialement,
    En fait je parcours mon premier recordset et pendant le parcours j'effectue une recherche findfirst sur mon second recordset pour trouver l'enregistrement correspondant et obtenir les infos qu'il me manque.

    Cependant je ne sais pas comment pointer sur ce résultat pour en extraire la valeurs des champs qui m'interessent..

    Voici un extrait de mon code :

    Selection = "******"


    rs.Open Selection, oCnHeliosNatif, adOpenStatic, adLockReadOnly
    rs.MoveFirst

    selection2 = "********"
    Set rs2 = CurrentDb.OpenRecordset(selection2)
    rs2.MoveFirst

    Do While Not (rs.EOF)

    enr = "#" & rs!NO_RESA & "#;"
    enr = enr & "#" & rs!COUT_HEBERG_TTC & "#;"
    enr = enr & "#" & rs!COUT_FDD_TTC & "#;"
    enr = enr & "#" & rs!COUT_ASSUR_TTC & "#;"
    enr = enr & "#" & rs!CAUTION_HEBERG & "#;"
    enr = enr & "#" & rs!ETAT_RESA & "#;"

    rs2.FindFirst ("NO_RESA =' & rs!NO_RESA & '")

    c'est ici que j'aimerais pouvoir extraire les donnée pour les écrire dans mon fichier txt


    rs.MoveNext
    a.WriteLine (enr)
    Loop
    En espérant avoir été le plus clair possible,
    Bon appétit !

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mai 2015
    Messages : 20
    Par défaut
    Re,

    Je me suis diriger vers le tchat et grâce à l'idée de @jimbolion j'ai réussi à me débrouiller autrement c'est a dire, oublier la méthode find first, et exécuter une requête a chaque boucle dans mon parcours du premier recordset qui pointe sur le bon enregistrement et je peux ainsi extraire mes données.

    Quoi qu'il en soit merci de ta réponse & bon week-end !

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

Discussions similaires

  1. [Toutes versions] utilisation de la methode find
    Par patricktoulon dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 01/12/2010, 20h01
  2. "methode" Find sur une Recordset
    Par eclesia dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 18/01/2007, 08h55
  3. La commande Find d'un recordset
    Par christel1982 dans le forum ASP
    Réponses: 22
    Dernier message: 14/11/2005, 20h36
  4. methode find
    Par bachilbouzouk dans le forum ASP
    Réponses: 9
    Dernier message: 26/04/2005, 10h47
  5. [NumberFormat] : utilisation de la methode parse()
    Par richard_34b dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 20/10/2004, 15h07

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